在ANDROID应用中,为了使应用一直保持屏幕不自动锁定的状态,我们需要用到所谓的Wake Lock。
为了使用Wake Lock,我们首先需要在AndroidManifest.xml配置文件里面增加如下的权限以使我们能够在代码中使用WakeLock类。
<uses-permission android:name="android.permission.WAKE_LOCK"/>
然后在代码中我们需要通过PowerManager服务来得到一个WakeLock的实例。
PowerManager powerManager = (PowerManager)context.getSystemService(Context.POWER_SERVICE);
WakeLock wakeLock = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "My Lock");
调用以下代码使能WakeLock
wakeLock.acquire();
当Activity处于Pause或者Destroy时,需要禁止/释放WakeLock
wakeLock.release();
通常,我们在Activity.onCreate()方法中取得WakeLock实例,在Activity.onResume()方法中使能它,并在Activity.onPause()中释放WakeLock。这样能够保证我们的应用在被Pause或者Resume时都能够很好的运行。