Wie kann ich den Akkuladestand und -status ermitteln (eingesteckt, entladen, aufgeladen usw.)? Ich habe die Entwicklerdokumente recherchiert und eine BatteryManager-Klasse gefunden. Aber es enthält keine Methoden, nur Konstanten. Wie benutze ich es überhaupt?
109
Antworten:
In diesem Codebeispiel wird erläutert, wie Sie Informationen zur Batterie erhalten.
Zusammenfassend lässt sich sagen, dass ein Rundfunkempfänger für die
ACTION_BATTERY_CHANGED
Absicht dynamisch eingerichtet wird, da er nicht über Komponenten empfangen werden kann, die in Manifesten deklariert sind, sondern nur durch explizite RegistrierungContext.registerReceiver()
.quelle
Seit API 21 ist es möglich, Folgendes zu verwenden, um den aktuellen Batteriestand als Prozentsatz zu ermitteln:
quelle
Basierend auf offiziellen Android-Dokumenten können Sie diese Methode in einer Helper- oder Util-Klasse verwenden, um den aktuellen Batterieprozentsatz abzurufen:
quelle
Sie müssen keinen tatsächlichen BroadcastReceiver registrieren, da der BatteryManager von Android eine klebrige Absicht verwendet:
Dies geht aus den offiziellen Dokumenten unter https://developer.android.com/training/monitoring-device-state/battery-monitoring.html hervor .
quelle
Sie können dies verwenden, um die verbleibende Gebühr in Prozent zu erhalten.
quelle
Versuchen Sie diese Funktion ohne Erlaubnis oder Empfänger
quelle
Um den Batterieprozentsatz zu überprüfen, verwenden wir BatteryManager . Die folgende Methode gibt den Batterieprozentsatz zurück.
Quelle Link -
quelle
quelle
Ein Fehler in offiziellen Dokumenten: Sie müssen double anstelle von float verwenden. Weil 0,53F * 100F = 52F
quelle
In anderen Antworten wurde nicht erwähnt, wie auf den Batteriestatus zugegriffen werden soll (zotteln oder nicht).
quelle