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, stellt Informationen über den Ladezustand der Systembatterie bereit und ermöglicht es Ihnen, Benachrichtigungen über Ereignisse zu erhalten, die gesendet werden, wenn sich der Batteriestand oder der Ladezustand ändert. Dies kann verwendet werden, um die Ressourcennutzung Ihrer App anzupassen, um den Batterieverbrauch zu verringern, wenn die Batterie schwach ist, oder um Änderungen zu speichern, bevor die Batterie leer ist, um Datenverlust zu vermeiden.

Hinweis: Diese API ist nicht verfügbar in Web Workers (nicht über WorkerNavigator bereitgestellt).

Schnittstellen

BatteryManager

Bietet Informationen über den Ladezustand der Systembatterie.

Erweiterungen zu anderen Schnittstellen

Gibt ein Promise zurück, das mit einem BatteryManager-Objekt aufgelöst wird.

Beispiel

In diesem Beispiel überwachen wir Änderungen sowohl des Ladezustands (ob wir angesteckt und geladen sind oder nicht) als auch Änderungen des Batteriestands und der Zeit. Dies wird durch das Abhören der Ereignisse chargingchange, levelchange, chargingtimechange, dischargingtimechange erreicht.

js
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

Browser-Kompatibilität

api.BatteryManager

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
BatteryManager
charging
chargingTime
chargingchange event
chargingtimechange event
dischargingTime
dischargingtimechange event
level
levelchange event
Secure context required
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
No support
No support
Experimental. Expect behavior to change in the future.
Has more compatibility info.

api.Navigator.getBattery

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
getBattery
Secure context required
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.

Siehe auch