Android节能相关
来源:互联网 发布:新速特软件站下载 编辑:程序博客网 时间:2024/04/25 09:59
修复Bug:
现象:节能控制当非按电源键锁屏的情况下,开启的节能不亮屏控制不成功.
分析差异:
- 按电源键锁屏:
- event.log: power_screen_state[0,2,0,0]
- 自动超时锁屏:
- event.log: power_screen_state[0,3,0,0]
- 上述情况是event.log的打印,具体解析还得看源码或者大神指教.
猜测:
- 其他地方调用获取并释放常亮屏锁.
- 休眠锁未维护好,未奏效.
排除过程
- 观察打印流程中WakeLock实例的创建与释放.
- 观察WakeLock初始化的参数:
- PowerManager.SCREEN_DIM_WAKE_LOCK
- PowerManager.SCREEN_BRIGHT_WAKE_LOCK
- PowerManager.PARTIAL_WAKE_LOCK
- 上述参数配合一下两个参数使用:
- PowerManager.ACQUIRE_CASES_WAKEUP
- PowerManager.ON_AFTER_RELEASE
中间的弯路:
- 特大耗时点:研究Android … 情况下亮屏.对比power_screen_state[0,2,0,0]与power_screen_state[0,3,0,0]的区别还未果…
- 当时的想法:找出这两种状态下的差异,通过差异在项目中寻找解答逻辑.
- 失败原因:对Android偏底层实现不了解.
正确解决Bug:
- 全局搜索所有的WakeLock类的对象,将所有执行WakeLock初始化的代码中加断点,重现Bug,分析.
- 发现在另外一个类中获取并释放了一次常亮锁导致此Bug
最后期待:
大家将自己了解的相关屏幕状态的一些情况分享一下.
0 0
- Android节能相关
- 节能
- 马凯-节能
- android 设备在设置节能模式的情况下 调用 Toast 会 唤醒屏幕 突然变亮
- QQ与节能
- 电子产品节能迫在眉睫
- 红外线节能灶头
- 变频节能是伪科学?
- Ubuntu下节能管理
- NYOJ 304 节能
- Linux下节能中断
- NYOJ 304 节能
- nyoj304 节能 动态规划
- 第四届省赛题 节能
- 节能(区间DP)
- Android相关
- android 相关
- Android 相关
- C++学习历程及感受
- 关于自己在学习java路程上的所思所想(三)
- Javascript 数组循环遍历之forEach
- GitHub Top 100的Android开源库
- 【bzoj2595】[Wc2008]游览计划 斯坦纳树
- Android节能相关
- swift 编写欢迎界面-- ios开发
- AFN中POST请求提交数据的方式及一些问题
- Could not find a storyboard named 'Main' in bundle NSBundle
- 第十六周--阅读程序
- Android开发重要参考资料
- I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之根文件系统挂载
- C++标准库和标准模板库
- 对角矩阵(diagonal matrix)