Auf dieser Seite wird beschrieben, wie Sie einen von Ihrer App gehaltenen Wake Lock freigeben. Es ist wichtig, einen Wake Lock freizugeben, sobald Ihre App ihn nicht mehr benötigt, um eine Entladung des Akkus zu vermeiden.
Aktiven Wakelock freigeben
Rufen Sie die Methode release()
auf, um eine aktive Wake Lock freizugeben. Dadurch wird der Anspruch auf die CPU freigegeben.
Im folgenden Code wird beispielsweise ein Wake Lock abgerufen, es werden einige Aufgaben ausgeführt und dann wird das Wake Lock wieder freigegeben:
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(); } }
Geben Sie Wake Locks frei, sobald sie nicht mehr benötigt werden. Wenn Sie beispielsweise einen Wakelock verwenden, damit eine Hintergrundaufgabe abgeschlossen werden kann, müssen Sie den Lock freigeben, sobald die Aufgabe abgeschlossen ist.
Wichtige Punkte zu diesem Code
In diesem Beispiel kann die Methode doTheWork()
eine Ausnahme auslösen. Aus diesem Grund wird die Wake Lock im finally
-Block freigegeben, um sicherzustellen, dass sie unabhängig davon freigegeben wird, ob eine Ausnahme ausgelöst wird. Es ist sehr wichtig, dass jeder von Ihnen festgelegte Wake Lock freigegeben wird. Sie müssen daher jeden möglichen Codepfad prüfen, um sicherzustellen, dass der Wake Lock in keinem von ihnen aktiv bleibt.