美文网首页
Android 使用Wake Lock

Android 使用Wake Lock

作者: 呆呆_ | 来源:发表于2016-10-25 20:15 被阅读0次

为了延长电池的使用寿命,Android设备会在一段时间后使屏幕变暗,然后关闭屏幕显示,最后停止CPU。WakeLock是一个电源管理系统服务功能,应用程序可以使用它来控制设备的电源状态。

WakeLock可以用来保持CPU运行,避免屏幕变暗和关闭,以及避免键盘背光灯熄灭。
注意:
创建和使用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运行。
PowerManager pm = (PowerManager)getSystemService(Context.POWER_SERVICE);  
WakeLock wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyWakeLock");  

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

PowerManager pm = (PowerManager)getSystemService(Context.POWER_SERVICE);  
WakeLock wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyWakeLock");  
wakeLock.acquire();  
/** Do things requiring the CPU stay active */  
wakeLock.release();  

需要权限:
<uses-permission android:name="android.permission.WAKE_LOCK"/>

相关文章

  • Android 使用Wake Lock

    为了延长电池的使用寿命,Android设备会在一段时间后使屏幕变暗,然后关闭屏幕显示,最后停止CPU。WakeLo...

  • Android Wake Lock 机制

    Android为了确保应用程序中关键代码的正确执行,提供了WakeLock的API,使得应用程序有权限通过代码阻止...

  • Android Wake Lock机制

    PowerManager.WakeLock public final class PowerManager.Wak...

  • Android Wake Lock 机制

    Android为了确保应用程序中关键代码的正确执行,提供了WakeLock的API,使得应用程序有权限通过代码阻止...

  • Android上保持Socket长连接

    0.Thanks 性能优化十六之Wake_Lock唤醒锁以及JobScheduler使用安卓 java 判断soc...

  • January~fiveteen dream

    In three o'lock,I wake up.I dreamed I come to high school...

  • WakeLock

    PROXIMITY_SCREEN_OFF_WAKE_LOCK:pSensor导致的灭屏情况下系统不会进入休眠,正常...

  • Wait_Queue------等待队列的唤醒事件

    wake_up()与wait_event()或者wait_event_timeout成对使用, wake_up_i...

  • Lock 的使用

    Lock 的使用 使用 ReentrantLock 类 lock():获取锁 unlock():释放锁 效果和 s...

  • AliOS 的LOG

    基本参考的Android的代码 对于aos_mutex_lock 调用krhino_mutex_lock,不能在中...

网友评论

      本文标题:Android 使用Wake Lock

      本文链接:https://www.haomeiwen.com/subject/lyzruttx.html