PowerManager之UserActivity
来源:互联网 发布:越南古代服饰淘宝 编辑:程序博客网 时间:2024/06/05 17:21
1.何时发生UserActivity
如果我们在Settings中设置sleep时间为15s,那么15秒内如果没有任何操作,屏幕就会熄灭(当然,没有WakeLock未被释放是前提)。如果在这个时间内用户有操作:touch屏幕或者按下菜单键、返回键等,那么这时就会调用PowerManagerService的UserActivity方法,这样会重置那个timeout的时间。
这里有三个重要的时间,参考下图:
首先是screenOffTimeout,一般地,就是设置中的sleep时间,用户可选,有15s、30s、1min、2mins等。device admin和window manager可以override这个时间(PowerManager提供了相应的接口),但是override有要求:必须大于10s,并小于设置中的15s,否则是无意义的,如果这里override了,那么这个就是最终的结果,如果没有override,那么以setting中的为准。在我们后来的讨论中都假设用户选择了15s,而且没有override,所以screenOffTimeout=15s。
其次是screenDimDuration,它代表屏幕亮度处于dim的持续时间(屏幕的变化:bright--dim--off),它是0.2*15s=3s。如果用户在settings中设置的不是15s,而是1min,那么1min*0.2=12s,当大于7s时,取7s。
最后是screenButtonLightDuration,它代表button持续点亮的时间,是0.3*15s=4.5s,它也有最大值:8s。
好了,假设在屏幕点亮状态下,我按下了menu键会怎么样呢?会触发UserActivity,同时User activity event type是USER_ACTIVITY_EVENT_BUTTON,那么从按下menu键开始后,button处于点亮状态,screen处于bright首先button的背光持续4.5s点亮,之后熄灭,经过7.5s后screen由bright变为dim,持续3s后,screen off。
j
- PowerManager之UserActivity
- android API之PowerManager和PowerManager.WakeLock
- PowerManager之WakeLock
- Android之PowerManager&BatteryManager
- Android之PowerManager简介
- Android PowerManager 之启动
- linux powermanager 之 wakeup
- userActivity学习
- PowerManager
- PowerManager
- PowerManager
- PowerManager
- Android之PowerManager电源管理
- Android之PowerManager电源管理
- Android之PowerManager电源管理
- PowerManager之WakeLock源码解析
- Android之PowerManager电源管理
- android-API之PowerManager 电源管理类
- 1619: [Usaco2008 Nov]Guarding the Farm 保卫牧场
- win7 自定义安装php iis
- 背包问题
- 和为s的两个数字VS和为s的连续整数序列(面试题 41)
- 学习总结十八:Hbase数据库介绍
- PowerManager之UserActivity
- Java递归搜索指定文件夹下的匹配文件
- 温度PID控制
- 新生报到
- LeetCode——String to Integer (atoi)
- double long float类型读入读出 double取模 fmod
- 【LeetCode with Python】 Binary Tree Level Order Traversal II
- Cocos2d-iPhone V3 (2) 场景转换
- PHP环境搭建:Windows7系统配置PHP+Apache+MySQL环境教程