释放唤醒锁定

本页介绍了如何释放应用持有的唤醒锁定。请务必在应用结束对唤醒锁定的使用后立即将其释放,以避免消耗电池电量。

释放有效的唤醒锁定

如需释放有效的唤醒锁定,请调用其 release() 方法。这样做会释放您对 CPU 的声明。

例如,以下代码会获取唤醒锁定、执行一些工作,然后释放唤醒锁定:

Kotlin

@Throws(MyException::class)
fun doSomethingAndRelease() {
    wakeLock.apply {
        try {
            acquire()
            doTheWork()
        } finally {
            release()
        }
    }
}

Java

void doSomethingAndRelease() throws MyException {
    try {
        wakeLock.acquire();
        doTheWork();
    } finally {
        wakeLock.release();
    }
}

请务必在不再需要唤醒锁定时立即释放。例如,如果您使用唤醒锁定来促使后台任务完成,请确保在任务完成后立即释放锁定。

此代码的要点

在此示例中,方法 doTheWork() 可能会抛出异常。因此,该代码会在 finally 代码块中释放唤醒锁,以确保无论是否抛出异常,唤醒锁都会被释放。请务必确保您设置的每个唤醒锁定都已释放,因此您需要检查所有可能的代码路径,确保唤醒锁定未在其中任何路径上保持活动状态。

另请参阅