欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android编程实现禁止系统锁屏与解锁亮屏的方法

程序员文章站 2023-12-14 22:37:04
本文实例讲述了android编程实现禁止系统锁屏与解锁亮屏的方法。分享给大家供大家参考,具体如下: 需求: 某个时刻任务执行完毕,关闭屏幕,某时刻再开启屏幕继续执行任务...

本文实例讲述了android编程实现禁止系统锁屏与解锁亮屏的方法。分享给大家供大家参考,具体如下:

需求:

某个时刻任务执行完毕,关闭屏幕,某时刻再开启屏幕继续执行任务

通常情况下,不设置屏幕常亮,系统会自动锁屏,锁屏后不能从代码解锁(疑问),所以我的做法是只让系统关闭屏幕,但不锁屏!

wakelock lock, unlock;
keyguardmanager km;
keyguardlock kl;

unlock = pm.newwakelock(powermanager.acquire_causes_wakeup | powermanager.screen_bright_wake_lock, "bright");
// 得到键盘锁管理器对象
km = (keyguardmanager) getsystemservice(context.keyguard_service);
kl = km.newkeyguardlock("unlock");

void lockscreen() {
  // 锁屏
  kl.reenablekeyguard();
  // 释放wakelock,关灯
  if(unlock.isheld())
    unlock.release();
}
void unlockscreen() {
  // 点亮屏幕
  if(!unlock.isheld())
    unlock.acquire();
  // 解锁
  kl.disablekeyguard();
}

测试代码,调用测试代码后,你手动按电源键锁屏,5s后你会看到屏幕亮起

{
  lockscreen();
  getlistview().gethandler().postdelayed(new runnable() {
    @override
    public void run() {
      unlockscreen();
    }
  }, 5000);
  break;
}

希望本文所述对大家android程序设计有所帮助。

上一篇:

下一篇: