设为首页 加入收藏

TOP

Android 使用Wake Lock
2014-11-24 14:30:30 来源: 作者: 【 】 浏览:0
Tags:Android 使用 Wake Lock

WakeLock可以用来保持CPU运行,避免屏幕变暗和关闭,以及避免键盘背光灯熄灭。


注意:


创建和使用Wake Lock会对应用程序造成的电池电量消耗产生显著的影响。因此,最好只在


确实有必要时使用Wake Lock,并且使用它们的时间越少越好,只要有可 能就释放它们。


屏幕Wake Lock通常用于在用户观看屏幕但是很少与屏幕进行交互期间(例如,播放视频)防止屏幕变暗。


CPU Wake Lock用于防止设备进入休眠状态,直至执行了一个操作。当服务从意图接收器内启动时常常出现这种情况,因为意图接收器可能在设备休眠期间接收意图。值得注意的是,在这种情况下,系统将在广播接收器的整个onReceive处理程序中使用CPU Wake Lock。


注意:


如果在广播接收器的onReceive处理程序中启动一个服务或广播一个意图,那么有可能在服务


启动以前,所使用的Wake Lock就会被释放。为了确保服务能够执行,需要放置一个独立的Wake Lock。


要创建一个Wake Lock,需要调用电源管理器的newWakeLock,并指定一下一种WakeLock类型:


* FULL_WAKE_LOCK 保持屏幕全亮、键盘背光灯点亮和CPU运行。


* SCREEN_BRIGHT_WAKE_LOCK 保持屏幕全亮和CPU运行。


* SCREEN_DIM_WAKE_LOCK 保持屏幕开启(但是让它变暗)和CPU运行。


* PARTIAL_WAKE_LOCK 保持CPU运行。



创建Wake Lock后,可以通过调用acquire来获取它。可以有选择地指定一个超时值来确保将在尽可能长的时间内保持使用Wake Lock。当为某个动作使用Wake Lock,而该动作做完成时,需要调用release来让系统管理电源状态。 下面程序显示了创建、获取和释放Wake Lock的一个典型的使用模式。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇基于Linux Socket 简单学生信息管.. 下一篇Android Messenger 跨进程通信

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: