PowerManager.WakeLock使用(屏幕恒亮)
使用PowerManager.WakeLock来保证程序运行时保持手机屏幕的恒亮。
public class WakeLockDemo extends Activity {private PowerManager.WakeLock wakeLock = null;//获取锁public void acquireWakeLock(Context context) {if (wakeLock == null) {PowerManager powerManager = (PowerManager)(context.getSystemService(Context.POWER_SERVICE));wakeLock = powerManager.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");wakeLock.acquire();}}//释放锁public void releaseWakeLock() {if(wakeLock != null && wakeLock.isHeld()){wakeLock.release();wakeLock = null;}}@Overridepublic void onCreate() {super.onCreate();//初始化 }@Overridepublic void onResume() {acquireWakeLock(this);super.onResume();}@Overridepublic void onPause() {releaseWakeLock();super.onPause();}}
各种锁的类型对CPU 、屏幕、键盘的影响:
PARTIAL_WAKE_LOCK: 保持CPU 运转,屏幕和键盘灯可以关闭。
SCREEN_DIM_WAKE_LOCK: 保持CPU 运转,保持屏幕显示,但可以变暗,允许键盘灯关闭。
SCREEN_BRIGHT_WAKE_LOCK:保持CPU 运转,允许保持屏幕高亮显示,允许键盘灯关闭。
FULL_WAKE_LOCK: 保持CPU 运转,保持屏幕和键盘灯都高亮显示。
ACQUIRE_CAUSES_WAKEUP: 当获取锁后,立刻亮屏,典型地使用在通知中,以让用户立刻查看。
ON_AFTER_RELEASE: 在释放锁(release())后,手机屏幕仍会继续亮一会儿。\
权限获取
要进行电源的操作需要在AndroidManifest.xml中声明该应用有设置电源管理的权限。
<uses-permission android:name="android.permission.WAKE_LOCK" />
你可能还需要
<uses-permission android:name="android.permission.DEVICE_POWER" />
另外WakeLock的设置是 Activiy 级别的,不是针对整个Application应用的。
可以在activity的onResume方法里面操作WakeLock, 在onPause方法里面释放。
另外WakeLock的设置是 Activiy 级别的,不是针对整个Application应用的。
可以在activity的onResume方法里面操作WakeLock, 在onPause方法里面释放。
转: http://chenfeng0104.iteye.com/blog/1164675
转载于:https://www.cnblogs.com/622698abc/p/3222333.html
PowerManager.WakeLock使用(屏幕恒亮)相关推荐
- Android开发-屏幕常亮的方法
方法一:xml文件中的顶层布局添加属性 在你需要常亮的Activity对应的布局文件中,给需要屏幕常亮的UI组件设置:android:keepScreenOn="true" 只要A ...
- Android 屏幕常亮、低电量监听
Android保持屏幕常亮只需在manifest文件注册权限并使用PowerManager进行管理: <uses-permission android:name="android.pe ...
- Android屏幕常亮防息屏
Android屏幕常亮防息屏 PowerManager 主要是用来控制电源状态的. 通过使用该类提供的api可以控制电池的待机时间 尽可能的使用最低级别的WakeLocks锁,并且确保使用完后释放它 ...
- 安卓app保持屏幕常亮
亲测方法一有效 方法一:持有WakeLock 首先获取WakeLock相关权限: <uses-permission android:name="android.permission.W ...
- Android保持屏幕常亮的两种方法
保持屏幕常亮的两种方法: 我们大家在用手机的时候,会遇到这样的一个问题,就是想让我们的手机屏幕一直亮着怎么办.大家会想到的是,在手机设置里有一个不省电模式,选择这个就可以了,但是我们要在代码中是怎么样 ...
- Android屏幕常亮
最简单 布局文件任一可见View设置属性android:keepScreenOn="true":关闭时只需把true改为false即可. 在Activity的onCreate()中 ...
- Android 之 设置屏幕常亮
转自:http://blog.csdn.net/feimor/article/details/6678207 保持屏幕常亮的两种方法: 我们大家在用手机的时候,会遇到这样的一个问题,就是想让我们的手机 ...
- Android-WakeLock(唤醒锁与CPU休眠/屏幕常亮)
参考: https://blog.csdn.net/wh_19910525/article/details/8287202 http://landerlyoung.github.io/blog/201 ...
- android 保持唤醒状态,Android保持屏幕常亮唤醒状态的方法
本文实例讲述了Android保持屏幕常亮唤醒状态的方法.分享给大家供大家参考,具体如下: 第一步: 首先添加权限: 复制代码 代码如下: 第二步:代码实现如下: public class Screen ...
最新文章
- calendar 获取季度的第一天_Java日期查询:日、周、旬、月、季度、年等时间操作...
- JavaScript - JavaScript自定义弹出对话框
- Docker中的网络问题
- [公告]网站恢复正常运行
- 基于springboot+vue的前后端分离商城系统
- Python魔术世界 1 如何使用Visual Studio在WIN10中一键安装Python3入门编程环境并测试Django...
- 如何在本地设置www.xxx.com,使其允许访问
- ArcGIS+Sql Server发布要素服务
- python——字典攻击
- AD18原理图绘制步骤
- 微信小程序 请求返回:data format error hint
- 云顶之弈服务器维护多长时间,英雄联盟3.17更新维护时间介绍 云顶之弈什么时候可以玩_18183云顶之弈专区...
- 金融衍生物英语名词的对应中文解析
- Scratch(三十八):八大行星
- iOS展示超大图片或超高分辨率图片崩溃解决方法
- SLAM在机器人中的应用
- sap采购申请自动转采购订单
- 实例:用C#.NET手把手教你做微信公众号开发(12)--带参数二维码裂变推广
- hdu2198 How many elements you must throw out? C语言动态规划题
- ISO Country Code - 标准国家码
热门文章
- java lambda教程_Lambda系列教材 (一)- Java Lambda 表达式教程
- 20191020:(leetcode系习题)检测大写字母
- 20190828:(leetcode习题)回文链表
- webview session不失效_不懂HttpSession对象看这里--乐字节
- python切片表达式3个参数_Python:Base3(函数,切片,迭代,列表生成式)
- gensim提取一个句子的关键词_NLP(五):关键词提取补充(语料库和向量空间)...
- clickhouse 的mysql表引擎
- spark阶段和任务小结
- 智能一代云平台(四十):Maven项目如何将lib下依赖的包打印在manifest文件中
- AI如何变革家居软装?拍图就能搜商品,深度学习平台飞桨新玩法