需求:在诗词曲文项目中,诗词整篇朗读的时候,文章没有读完会因为屏幕熄灭停止朗读。要求:在文章没有朗读完毕之前屏幕常亮,读完以后屏幕常亮关闭;

1.权限配置:设置电源管理的权限。

   <uses-permission android:name="android.permission.WAKE_LOCK"/><uses-permission android:name="android.permission.DEVICE_POWER"tools:ignore="ProtectedPermissions"/>

2.保持屏幕唤醒逻辑

private static PowerManager.WakeLock wakeLock; 
public static void keepScreenOn(Context context, boolean on) {if (on) {PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);wakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.ON_AFTER_RELEASE,TAG);wakeLock.acquire();} else {if (wakeLock != null) {wakeLock.release();wakeLock = null;}}}

3.newWakeLock参数说明:

根据flags不同的值,实现不同级别的电源管理。 关于int flags 各种锁的类型对CPU 、屏幕、键盘的影响:
PARTIAL_WAKE_LOCK :保持CPU 运转,屏幕和键盘灯有可能是关闭的。
SCREEN_DIM_WAKE_LOCK :保持CPU运转,允许保持屏幕显示但有可能是灰的,允许关闭键盘灯 SCREEN_BRIGHT_WAKE_LOCK :保持CPU 运转,允许保持屏幕高亮显示,允许关闭键盘灯 FULL_WAKE_LOCK :保持CPU 运转,保持屏幕高亮显示,键盘灯也保持亮度.

4.在项目结束【本项目中播放完毕】在Destory中将wakeLock给release掉:

@Override  protected void onDestroy() {  super.onDestroy();  keepScreenOn(Main.this, false);  }

【wakelock唤醒锁被release后不会直接熄屏,而是在系统指定的梁平时间结束之后熄屏】

5.注意:Android中通过各种Lock锁对电源进行控制,需要注意的是加锁和解锁必须成对出现。

转载自:http://blog.csdn.net/zhoumushui/article/details/41964147

Android 控制屏幕唤醒常亮或熄灭相关推荐

  1. Android让屏幕保持常亮的方法,亲测有效

    最近一个项目中有视频通话功能,需要用到保持视频通话页面屏幕常亮,研究了一下实现代码,现在放出来分享给大家. 第一步. 创建工具类   ScreenUtils.java /*** 屏幕常亮需要 申请屏幕 ...

  2. 如何让android的屏幕保持常亮

    首先添加权限: <uses-permission android:name="android.permission.WAKE_LOCK"></uses-permi ...

  3. Android让屏幕保持常亮,不熄屏的三种方法

    转载自https://blog.csdn.net/superxlcr/article/details/78822544 方法一:持有WakeLock 首先获取WakeLock相关权限: <use ...

  4. Android实例-屏幕操持常亮(XE8+小米2)

    相关资料: http://www.bubuko.com/infodetail-163304.html 结果: 1.打开权限Wake lock为True. 第三方单元: 1 unit Android.J ...

  5. Android设置屏幕保持长亮

    实现这一功能的方法有两种,一种是在Manifest.xml文件里面声明,一种是在代码里面修改LayoutParams的标志位.具体如下: 1.在Manifest.xml文件里面用user-permis ...

  6. UNI-APP设置屏幕保持常亮

    // 保持屏幕常亮 uni.setKeepScreenOn({keepScreenOn: true }); 或者 plus.device.setWakelock(true); 都可以实现保持手机屏幕常 ...

  7. 树莓派保持屏幕一直常亮

    树莓派保持屏幕常亮 1.打开终端 sudo nano /etc/lightdm/lightdm.conf 2.找到[Seat:*]这一项,在下面的'#xserver-command=X'删除前面的注释 ...

  8. html使屏幕保持常亮,让win7系统桌面常亮不灭的两种方法

    我们都知道离开win7电脑几分钟后,桌面就会自动变黑了,要使用电脑要移动鼠标或敲打键盘,每次这样一些用户感觉比较麻烦.有什么方法可以让win7系统桌面常亮不灭?解决问题就要找出问题的根源,其实出现此现 ...

  9. iOS让屏幕保持常亮,不自动锁屏

    设为YES则保持常亮,不自动锁屏,默认为NO会自动锁屏 [[UIApplication sharedApplication] setIdleTimerDisabled:YES];

最新文章

  1. ld-linux-x86-64.so.2+,RedHat6安装Oracle数据库遇到错误 C [ld-linux-x86-64.so.2+0x14d70]
  2. Windows Server 2012 R2在桌面上显示计算机/网络图标
  3. 问题解决——AttributeError: module ‘tensorflow‘ has no attribute ‘placeholder‘
  4. 用二叉树来理解树状数组
  5. flink mysql日志,关于flink的日志文件设置
  6. 微信突然出现redirect_uri 参数错误
  7. 线段树求区间和(单点更新)
  8. python开发-常见面试题
  9. html5访问电脑或手机摄像头
  10. MySQL越高版本越快吗_MySQL性能优化的最佳20+条经验
  11. shrio初体验(1)
  12. In Depth和In Action的区别——写在《深入理解C#(第二版)》出版之际
  13. 计算机考研复试面试系列 计算机专业英语篇
  14. 联想硬盘保护系统安装
  15. 主板后置音频接口图解_全程图解:手把手教你主板各种插针接口与机箱的接法_通信数码...
  16. apm系统服务器,APM系统简单对比(zipkin,pinpoint和skywalking)
  17. 树莓派4B点亮LED小灯
  18. oracle按照成绩排序,oracle 经典分数排名
  19. 学习W5500的OTA平台的SDK
  20. Treedp贪吃的九头龙详解

热门文章

  1. 玩:圣诞老人和圣诞小子
  2. android删除手机照片恢复软件,安卓手机上照片删除如何恢复?
  3. 图片去水印工具-图片一键去水印的免费app
  4. 封头名义厚度如何圆整_关于几种形式封头特点的比较
  5. html5关于校庆作品名称,五十五周年校庆标语
  6. 编写一个函数判断一个整数是不是素数c语言,编写函数判断一个整数是否为素数....
  7. 《版式设计——日本平面设计师参考手册》—第1章如何存储旧版本的InDesign文件...
  8. 北京航空航天大学961计算机专业综合考纲
  9. OpenGL集锦(1)-安装与概述
  10. Evolutionary Computing: 3. Genetic Algorithm(2)