Android编程实现禁止系统锁屏与解锁亮屏的方法
本文实例讲述了Android编程实现禁止系统锁屏与解锁亮屏的方法。分享给大家供大家参考,具体如下:
需求:
某个时刻任务执行完毕,关闭屏幕,某时刻再开启屏幕继续执行任务
通常情况下,不设置屏幕常亮,系统会自动锁屏,锁屏后不能从代码解锁(疑问),所以我的做法是只让系统关闭屏幕,但不锁屏!
WakeLocklock,unLock; KeyguardManagerkm; KeyguardLockkl;
unLock=pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP|PowerManager.SCREEN_BRIGHT_WAKE_LOCK,"bright");
//得到键盘锁管理器对象
km=(KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE);
kl=km.newKeyguardLock("unLock");
voidlockScreen(){
//锁屏
kl.reenableKeyguard();
//释放wakeLock,关灯
if(unLock.isHeld())
unLock.release();
}
voidunLockScreen(){
//点亮屏幕
if(!unLock.isHeld())
unLock.acquire();
//解锁
kl.disableKeyguard();
}
测试代码,调用测试代码后,你手动按电源键锁屏,5s后你会看到屏幕亮起
{
lockScreen();
getListView().getHandler().postDelayed(newRunnable(){
@Override
publicvoidrun(){
unLockScreen();
}
},5000);
break;
}
希望本文所述对大家Android程序设计有所帮助。