您好,欢迎来到易妖游戏网。
搜索
您的当前位置:首页android设置屏幕禁止休眠的方法

android设置屏幕禁止休眠的方法

来源:易妖游戏网
android设置屏幕禁止休眠的方法

实现这一功能的方法有两种,一种是在Manifest.xml文件里面声明,一种是在代码里面修改LayoutParams的标志位。具体如下:

1、在Manifest.xml文件里面用user-permission声明。代码如下:

这种方法,在安装apk时,系统会提示安装人是否允许使用禁止休眠功能。

2、在程序中用代码实现。代码如下:

getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON,

WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

把这段代码加在setContentView(R.layout.main)之前即可 这种方法,安装时,不会提示安装人是否允许使用禁止休眠功能

Android如何保持程序一直运行

在正常情况下,Android系统会让程序和服务进入休眠状态以节约电量使用。然而在开发Android程序时,有时候在程序运行的时候,不能让系统休眠,否则有一些运行会停止,因此我们需要设置禁止休眠。

Android中设置禁止休眠有两种方式:

1. 在View中设置FLAG_KEEP_SCREEN_ON。

android:name=

android.permission.WAKE_LOCK”>

实现上可以在代码中设置,也可以在XML文件中设置。

代码如下所示:

getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON,

WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

或者配置文件对该View设置:

android:layout_width=\"fill_parent\"

android:layout_height=\"fill_parent\"

android:keepScreenOn=\"true\" android:orientation=\"vertical\" xmlns:android=\"/apk/res/android\">

这样可以保持当前View所在的Activity一直在活动状态运行,而且屏幕是高亮的。非常耗电!!

2.通过PowerManager来精细控制。

首先在Manifest.xml文件里面用user-permission声明

android:name=\"android.permission.WAKE_LOCK\"/>

android:name=\"android.permission.DEVICE_POWER\" />

之后通过PowerManager服务来获取电量控制锁:

private void acquireWakeLock() { if (wakeLock == null) { PowerManager wakeLock

pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, this.getClass().getCanonicalName());

wakeLock.acquire(); } }

关键代码在newWakeLock的第一个参数,可以有:

Flag Value CPU Screen Keyboard PARTIAL_WAKE_LOCK On* Off Off SCREEN_DIM_WAKE_LOCK On Dim Off SCREEN_BRIGHT_WAKE_LOCK On Bright Off FULL_WAKE_LOCK On Bright Bright

*PARTIAL_WAKE_LOCK参数和其他不同,如果选择了这个参数,那即时用户按了关机键,CPU仍保持运行;而其他参数在用户按了关机键之后,CPU即停止运行,如果不按关机键,系统在过一段时间休眠后,CPU仍保持运行。

在程序退出时,必须释放WakeLock:

pm

=

(PowerManager)

=

getSystemService(Context.POWER_SERVICE);

private void releaseWakeLock() {

if (wakeLock != null && wakeLock.isHeld()) { wakeLock.release(); wakeLock = null; } }

这两个方法分别OnResume/OnPause中调用。在OnCreate/OnDestroy

或者

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- vipyiyao.com 版权所有 湘ICP备2023022495号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务