Die in Android 9 (API-Level 28) eingeführten Energieverwaltungsfunktionen wirken sich auf alle Apps aus, die auf dieser Version ausgeführt werden, unabhängig davon, ob die Apps auf diese Version ausgerichtet sind oder nicht. Es ist wichtig, dass Ihre App auf diesen Geräten ordnungsgemäß funktioniert.
Testen Sie die wichtigsten Anwendungsfälle Ihrer App unter verschiedenen Bedingungen, um zu sehen, wie die Funktionen zur Energieverwaltung miteinander interagieren. Mit Android Debug Bridge (adb
)-Befehlen können Sie einige der Funktionen aktivieren und deaktivieren.
Android Debug Bridge (adb)-Befehle
Mit adb
-Shell-Befehlen können Sie mehrere Funktionen zur Energieverwaltung testen.
Informationen zur Verwendung von adb
, um dein Gerät in den Stromsparmodus zu versetzen, findest du unter Mit Stromsparmodus und App-Standby testen.
App-Standby-Buckets
Mit adb
können Sie Ihre App manuell einem App-Standby-Bucket zuweisen. Wenn Sie den Bucket einer App ändern möchten, simulieren Sie zuerst das Trennen des Geräts mit dem folgenden Befehl:
$ adb shell dumpsys battery unplug
Verwenden Sie den folgenden Befehl, um Ihrer App einen Standby-Bucket zuzuweisen:
$ adb shell am set-standby-bucket packagename active|working_set|frequent|rare
Mit dem obigen Befehl können Sie auch mehrere Pakete gleichzeitig festlegen:
$ adb shell am set-standby-bucket package1 bucket1 package2 bucket2...
Führen Sie folgenden Befehl aus, um zu prüfen, in welchem Bucket sich eine App befindet:
$ adb shell am get-standby-bucket packagename
Wenn Sie keinen packagename-Parameter übergeben, werden mit dem Befehl die Buckets für alle Apps aufgelistet.
Eine App kann ihren Bucket auch zur Laufzeit ermitteln, indem sie die neue Methode UsageStatsManager.getAppStandbyBucket()
aufruft.
Einschränkungen im Hintergrund
Führen Sie den folgenden Befehl aus, um Hintergrundeinschränkungen manuell anzuwenden:
$ adb shell cmd appops set packagename RUN_ANY_IN_BACKGROUND ignore
Führen Sie den folgenden Befehl aus, um Einschränkungen für die Hintergrundausführung zu entfernen:
$ adb shell cmd appops set packagename RUN_ANY_IN_BACKGROUND allow
Energiesparmodus
Es gibt mehrere Befehle, mit denen Sie testen können, wie sich Ihre App bei niedrigem Akkustand verhält.
Verwenden Sie den folgenden Befehl, um das Trennen des Geräts von der Stromversorgung zu simulieren:
$ adb shell dumpsys battery unplug
Mit dem folgenden Befehl können Sie testen, wie sich das Gerät bei niedrigem Akkustand verhält:
$ adb shell settings put global low_power 1
Nach Abschluss des Tests können Sie Ihre manuellen Geräteeinstellungen mit dem folgenden Befehl rückgängig machen:
$ adb shell dumpsys battery reset