Android电源锁WakeLock唤醒锁

来源:互联网 发布:韦德数据 编辑:程序博客网 时间:2024/04/30 15:37
<span style="font-family: 'Microsoft YaHei'; font-size: 12px;"></span><p style="color: rgb(54, 46, 43); font-family: Arial; font-size: 14px; margin-top: 1.6em; margin-bottom: 1.6em; line-height: 12.8000001907349px;"><span style="font-family: 'Microsoft YaHei'; font-size: 12px;">通过采用出色的电源管理,Android 和其他移动操作系统实现了耐久的电池续航时间。 停止使用手机后不久,显示器便会关闭,CPU 会进入深度节能状态,因此在不使用它时仅会消耗极少的电源。 这就是电话在使用时充一次电便能持续使用多日的原因。 借助 Android 的电源管理器,正常计划是显示器关闭时 CPU 也关闭。</span></p><p style="color: rgb(54, 46, 43); font-family: Arial; font-size: 14px; margin-top: 1.6em; margin-bottom: 1.6em; line-height: 12.8000001907349px;"><span style="font-family: 'Microsoft YaHei'; font-size: 12px;">但是,Android 开发人员能够(并有权限)阻止 Android 设备进入睡眠模式。 他们可能希望让 CPU 处于活动状态 — 即使显示器关闭。 或者可能他们希望在执行某项活动时阻止显示器自动关闭。 出于此原因,Google* 在其 PowerManager API 中增加了唤醒锁。 阻止设备进入睡眠模式的应用可以使用唤醒锁。 只要系统上有活动的唤醒锁,设备便无法进入挂起模式,除非释放唤醒锁。 使用唤醒锁时,一定要了解到当您不需要唤醒锁时,必须将其正确释放,因为未释放的唤醒锁无法进入默认状态以节能,从而很快便会将设备的电池耗尽。</span></p>
<span style="font-family: 'Microsoft YaHei'; font-size: 12px;">public void onCreate(Bundle savedInstanceState) {    ...    mPowerManager = (PowerManager) getSystemService(Context.POWER_SERVICE);    ...    mWakeLock = mPowerManager.newWakeLock(mWakeLockState,"UMSE PowerTest");    if (mWakeLock != null) {        mWakeLock.acquire();    ...    }}protected void onDestroy() {    if (mWakeLock != null) {        mWakeLock.release();        mWakeLock = null;    }    ...}</span>

0 0