Android系统无法进入休眠
2016-05-30 20:23
162 查看
从log中发现,是由于dialer持有weaklock导致的。更详细的原因如下:
1)来电界面新增了延迟5s亮屏响铃需求,弹出界面时屏幕是暗的
2)5s后获取weaklock点亮屏幕
3)onResume里获取weaklock, onPause里释放weaklock
如果在步骤1后,系统通知将来电界面切换到后台,这时再执行步骤2,则不会再执行onResum onPause这些生命周期,所以无法释放锁
1)来电界面新增了延迟5s亮屏响铃需求,弹出界面时屏幕是暗的
2)5s后获取weaklock点亮屏幕
3)onResume里获取weaklock, onPause里释放weaklock
如果在步骤1后,系统通知将来电界面切换到后台,这时再执行步骤2,则不会再执行onResum onPause这些生命周期,所以无法释放锁
相关文章推荐
- 由于drawable目录下新建文件夹导致的AndroidStudio编译失败解决思路!
- android中selector在java代码中使用无效的解决方案
- Android:Intent Filter 和 action 简介AndroidMainfest.xm
- Android学习记录(十八)-url转义继续填坑之旅
- Android开发 EditTextPreference 和 ListPreference的summary值动态修改
- 从Android代码中来记忆23种设计模式
- service全面解析(一)
- Android 在内部存储读写文件
- 中兴部分手机BLE不能带参数扫描
- Android—基于GifView显示gif动态图片
- 论工程结构设计的重要性
- Android Espresso 测试框架探究
- 使用andorid studio遇到的问题
- android那些坑
- Android中ListView使用总结
- Android文件/文件夹选择器(支持多选操作),已封装为lib库,直接添加依赖即可。
- Android java 中如何优雅的结束线程
- android中的四种启动模式launchMode
- 在android studio中加载本地html文件
- 深入理解Android之AOP