Battery Status API
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Die Battery Status API, häufiger als Battery API bezeichnet, liefert Informationen über den Ladezustand des Akkusystems und ermöglicht es Ihnen, durch Ereignisse benachrichtigt zu werden, die gesendet werden, wenn sich der Batteriestand oder der Ladezustand ändert. Dies kann verwendet werden, um die Ressourcennutzung Ihrer App anzupassen, um den Batterieabfluss zu verringern, wenn der Batteriestand niedrig ist, oder um Änderungen zu speichern, bevor der Akku leer ist, um Datenverlust zu verhindern.
Hinweis:
Diese API ist in Web Workers nicht verfügbar (nicht über WorkerNavigator
zugänglich).
Schnittstellen
BatteryManager
-
Liefert Informationen über den Ladezustand des Akkusystems.
Erweiterungen für andere Schnittstellen
-
Gibt ein
Promise
zurück, das mit einemBatteryManager
-Objekt aufgelöst wird.
Beispiel
In diesem Beispiel überwachen wir sowohl Änderungen des Ladezustands (ob wir angeschlossen und aufgeladen werden) als auch Änderungen des Batteriestands und der Zeit. Dies geschieht, indem wir auf die Ereignisse chargingchange
, levelchange
, chargingtimechange
, dischargingtimechange
lauschen.
navigator.getBattery().then((battery) => {
function updateAllBatteryInfo() {
updateChargeInfo();
updateLevelInfo();
updateChargingInfo();
updateDischargingInfo();
}
updateAllBatteryInfo();
battery.addEventListener("chargingchange", () => {
updateChargeInfo();
});
function updateChargeInfo() {
console.log(`Battery charging? ${battery.charging ? "Yes" : "No"}`);
}
battery.addEventListener("levelchange", () => {
updateLevelInfo();
});
function updateLevelInfo() {
console.log(`Battery level: ${battery.level * 100}%`);
}
battery.addEventListener("chargingtimechange", () => {
updateChargingInfo();
});
function updateChargingInfo() {
console.log(`Battery charging time: ${battery.chargingTime} seconds`);
}
battery.addEventListener("dischargingtimechange", () => {
updateDischargingInfo();
});
function updateDischargingInfo() {
console.log(`Battery discharging time: ${battery.dischargingTime} seconds`);
}
});
Siehe auch das Beispiel in der Spezifikation.
Spezifikationen
Specification |
---|
Battery Status API |