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

作者:天使之翼 时间:2022-05-21 02:35:39 

本文实例讲述了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程序设计有所帮助。

标签:Android,锁屏,解锁
0
投稿

猜你喜欢

  • 深入解析:打造自动消失的对话框

    2022-04-07 02:53:56
  • Android 基于Bitmap的四种图片压缩方式

    2022-06-13 11:50:21
  • 用JAVA实现单链表,检测字符串是否是回文串

    2021-07-20 07:07:45
  • android耳机左右声道接反具体修正方法

    2021-05-27 21:16:38
  • java 字段值为null,不返回该字段的问题

    2023-07-13 10:32:34
  • c# 在windows中操作IIS设置FTP服务器的示例

    2023-07-18 06:13:01
  • Java中关于Map四种取值方式

    2022-04-22 09:24:09
  • Java多线程之同步工具类Exchanger

    2022-07-05 03:50:54
  • Unity Shader实现玻璃材质效果

    2021-10-27 05:25:29
  • c#中的扩展方法学习笔记

    2023-04-11 10:29:15
  • 值得收藏的2017年Java开发岗位面试题

    2023-11-29 15:22:01
  • Java设计模式之抽象工厂模式实例详解

    2023-11-29 04:04:57
  • Spring Bean 依赖注入常见错误问题

    2022-10-02 20:46:51
  • java9版本特性资源自动关闭的语法增强

    2023-10-30 23:35:24
  • Java JDK动态代理实现原理实例解析

    2022-04-23 05:19:10
  • IntelliJ IDEA 中使用jRebel进行 Java 热部署教程图解

    2023-04-20 19:23:42
  • 详解从ObjectPool到CAS指令

    2022-04-26 16:38:05
  • Java 图表类库详解

    2021-11-09 00:25:11
  • static关键字有何魔法?竟让Spring Boot搞出那么多静态内部类(推荐)

    2022-07-03 20:26:29
  • Java毕业设计实战之生活旅行分享平台的实现

    2022-02-01 02:42:18
  • asp之家 软件编程 m.aspxhome.com