android WakeLock使用方法代码实例
Android中提供了一个名为WakeLock的类在android.os.PowerManager.WakeLock中,从名字来看WakeLock是唤醒锁的意思,它可以控制屏幕的背光开关,所以在电源管理类。
WakeLock实例化方法比较简单,因为是系统的远程服务,通过下面的代码来构造
代码如下:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "Android123"); //最后一个参数为实例名,可以换成其他的。
wl.acquire(); //唤醒点亮屏幕
//这个期间屏幕将点亮
wl.release(); //恢复屏幕到黑暗
当然Android考虑到安全并不是说开发者有了权限,就可以随意的控制屏幕的背光显示或无,只有通过acquire点亮的背光才能使用release让其关闭背光,如果直接调用release方法关闭屏幕将会产生一个异常。
从Android 2.1 API Level7开始增加了一个判断屏幕是否处于点亮状态可以使用public boolean isScreenOn ()这个方法,代码为
代码如下:
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
boolean isScreenOn = pm.isScreenOn();
而对于Android 2.2 API Level为8时增加了一个reboot(),可以重启手机进入恢复模式,同时你需要申请权限 来实现,不过Android开发网不保证该方法在所有固件上有效,部分厂商考虑到安全并没有开发这个重启方法。
相关推荐
-
Android中系统自带锁WalkLock与KeyguardLock用法实例详解
本文实例讲述了Android中系统自带锁WalkLock与KeyguardLock用法.分享给大家供大家参考,具体如下: WalkLock - 顾名思义 唤醒锁 点亮屏幕用的 KeyguardLock - 顾名思义 键盘锁 解锁键盘用的 详细介绍: 1: WalkLock 唤醒锁 - WalkLock真的能点亮屏幕吗? 答案是肯定的. 可是有时候为什么不点亮屏幕,这个就是参数设置的问题了. 复制代码 代码如下: PowerManager.newWakeLock(PowerManager.FULL
-
Android ScreenLockReceiver监听锁屏功能示例
本文实例讲述了Android ScreenLockReceiver监听锁屏功能.分享给大家供大家参考,具体如下: 监听屏幕锁屏状态(注册接受者--执行业务--注销接受者) public class AppLockService extends Service { private ActivityManager am; private KeyguardManager keyguardManager; private LockScreenReceiver receiver; @Override pu
-
Android 监听锁屏、解锁、开屏 功能代码
1.首先定义 ScreenListener package com.app.lib; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.PowerManager; /** * Created by ${zyj} on 2016/6
-
Android控件之AnalogClock与DigitalClock用法实例分析
本文实例讲述了Android控件之AnalogClock与DigitalClock用法.分享给大家供大家参考.具体如下: 时钟控件包括AnalogClock和DigitalClock,它们都负责显示时钟,所不同的是AnalogClock控件显示模拟时钟,且只显示时针和分针,而DigitalClock显示数字时钟,可精确到秒 以下模拟时钟的用法 目录结构: 布局文件 <?xml version="1.0" encoding="utf-8"?> <!-
-
Android系统永不锁屏永不休眠的方法
开发Android程序时,有时候在程序运行的时候,不能让系统休眠,否则有一些运行会停止,因此我们需要设置禁止休眠,有两种方式: 一种是添加权限, 一种是代码中设置, 建议使用第一种方式,这样,在安装程序的时候会进行提醒: 第一种方式: 在Manifest.xml文件里面用user-permission声明 名称为:android.permission.WAKE_LOCK 第二种方式: getWindow().setFlags(WindowManager.L
-
Android AnalogClock简单使用方法实例
本文实例讲述了Android AnalogClock简单使用方法.分享给大家供大家参考,具体如下: AnalogClock组件的使用很简单,先来看看效果图: AnalogClock组件的使用只需要在布局中指定的显示位置写入此组件即可使用,不需要在java代码中进行实例化. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.a
-
Android编程实现一键锁屏的方法
本文实例讲述了Android编程实现一键锁屏的方法.分享给大家供大家参考,具体如下: 这里要用到下面两个类: DeviceAdminReceiver 设备管理组件.这个类提供了一个方便解释由系统发出的意图的动作.你的设备管理应用程序必须包含一个DeviceAdminReceiver的子类.本程序中,就代表一个手机上的设备管理器. DevicePolicyManager 一个管理设备上规范的类. 大多数客户端必须声明一个用户当前已经启用的DeviceAdminReceiver. 这个DeviceP
-
Android编程实现禁止系统锁屏与解锁亮屏的方法
本文实例讲述了Android编程实现禁止系统锁屏与解锁亮屏的方法.分享给大家供大家参考,具体如下: 需求: 某个时刻任务执行完毕,关闭屏幕,某时刻再开启屏幕继续执行任务 通常情况下,不设置屏幕常亮,系统会自动锁屏,锁屏后不能从代码解锁(疑问),所以我的做法是只让系统关闭屏幕,但不锁屏! WakeLock lock, unLock; KeyguardManager km; KeyguardLock kl; unLock = pm.newWakeLock(PowerManager.ACQUIRE_C
-
Android屏幕锁屏弹窗的正确姿势DEMO详解
在上篇文章给大家介绍了Android程序开发仿新版QQ锁屏下弹窗功能.今天通过本文给大家分享android锁屏弹窗的正确姿势. 最近在做一个关于屏幕锁屏悬浮窗的功能,于是在网上搜索了很多安卓屏幕锁屏的相关资料,鉴于网上的资料比较零碎,所以我在这里进行整理总结.本文将从以下两点对屏幕锁屏进行解析: 1. 如何监听系统屏幕锁屏 2. 如何在锁屏界面弹出悬浮窗 如何监听系统屏幕锁屏 经过总结,监听系统的锁屏可以通过以下两种方式: 1) 代码直接判定 2) 接收广播 1) 代码直接判定 代码判断方式,也
-
Android应用程序保持后台唤醒(使用WakeLock实现)
在使用一些产品列如微信.QQ之类的,如果有新消息来时,手机屏幕即使在锁屏状态下也会亮起并提示声音,这时用户就知道有新消息来临了.但是,一般情况下手机锁屏后,Android系统为了省电以及减少CPU消耗,在一段时间后会使系统进入休眠状态,这时,Android系统中CPU会保持在一个相对较低的功耗状态.针对前面的例子,收到新消息必定有网络请求,而网络请求是消耗CPU的操作,那么如何在锁屏状态乃至系统进入休眠后,仍然保持系统的网络状态以及通过程序唤醒手机呢?答案就是Android中的WakeLock机
-
Android DigitalClock组件用法实例
本文实例讲述了Android DigitalClock组件用法.分享给大家供大家参考,具体如下: DigitalClock组件的使用很简单,先看看效果图: DigitalClock只需要在布局文件中,用于显示时间的地方使用此组件即可,无需用java代码进行实例化. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.andro
-
Android编程之自定义锁屏实例分析
本文实例讲述了Android编程之自定义锁屏.分享给大家供大家参考,具体如下: 花了半天时间研究下了自定义锁屏,发现其实实现并不是很神秘.不过有些地方还是值得注意. 首先说流程,锁屏界面一般是在关闭屏幕时启用,打开屏幕时展现在我们面前,所以我们知道了锁屏的时机,恰好屏幕开关会发出相应的广播,所以我们也可以像系统一样捕获到屏幕开关的事件. 广播对应的两个action 引用 android.intent.action.SCREEN_ON android.intent.action.SCREEN_OF
随机推荐
- 探索Python3.4中新引入的asyncio模块
- Lua教程(三):C语言、C++中调用Lua的Table示例
- 正则表达式匹配,替换,查找
- 解决spring mvc 多数据源切换,不支持事务控制的问题
- asp.net+Ajax校验用户是否存在的实现代码
- jQuery 表单验证插件formValidation实现个性化错误提示
- Python lxml模块安装教程
- 使用模板实现ASP代码与页面分离
- PHP获取短链接跳转后的真实地址和响应头信息的方法
- python实现代码行数统计示例分享
- Python获取运行目录与当前脚本目录的方法
- js给onclick事件赋值,动态传参数实例解说
- 解决div被flash挡住的设置方法
- JavaScript电子时钟倒计时第二款
- js实现类似MSN提示的页面效果代码分享
- Java语言实现简单FTP软件 FTP连接管理模块实现(8)
- java实现微信公众平台自定义菜单的创建示例
- 如何查看MySQL连接的root密码
- 推荐40个简单的 jQuery 导航插件和教程(下篇)
- JQUERY简单按钮轮换选中效果实现方法