本頁面說明如何釋放應用程式所持有的喚醒鎖定。應用程式使用完喚醒鎖定後,請務必立即釋放喚醒鎖定,以免耗盡電池電量。
釋放有效的喚醒鎖
如要釋放有效的喚醒鎖定,請呼叫其 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();
}
}
請務必在不再需要時立即釋放 Wake Lock。舉例來說,如果您需要使用 Wake Lock 才能完成背景工作,請務必在工作結束後立即釋放鎖定。
這段程式碼的重點
在這個範例中,doTheWork()
方法可能會擲回例外狀況。因此,程式碼會在 finally
區塊中釋放喚醒鎖定,確保無論是否擲回例外狀況,都能釋放喚醒鎖定。確保您設定的每個喚醒鎖定都已釋放非常重要,因此您需要檢查每個可能的程式碼路徑,確保喚醒鎖定不會在任何路徑上處於啟用狀態。