--- title: Navigator.getBattery() slug: Web/API/Navigator/getBattery tags: - API - Battery API - Device API - Method - Navigator - Reference - getBattery - メッセージ translation_of: Web/API/Navigator/getBattery ---
getBattery()
メソッドは、システムのバッテリーに関する情報を提供します。これは {{domxref("BatteryManager")}} オブジェクトで解決されるバッテリーの promise を返し、バッテリーの状態を監視するために処理できるいくつかの新しいイベントを提供します。これは Battery Status API を実装しています。詳細、API の使用ガイド、サンプルコードについては、そのドキュメントを参照してください。
メモ: ブラウザーによっては、この機能へのアクセスは {{HTTPHeader("Feature-Policy")}} の {{HTTPHeader("Feature-Policy/battery","battery")}} ディレクティブで制御されます。
var batteryPromise = navigator.getBattery();
解決されると、バッテリーの状態に関する情報を取得するために使用できる {{DOMxRef("BatteryManager")}} オブジェクトを単一の引数として持つフルフィルメントハンドラーを呼び出す {{JSxRef("Promise")}} です。
このメソッドは真の例外を発生させません。代わりに、返されたプロミスが拒否され、 {{domxref("DOMException")}} の中に name
を次のうちの一つに設定します。
SecurityError
NotAllowedError
この例では、バッテリーの現在の充電状態を取得し、充電状態が変化するたびに充電状態が記録されるように、 {{Event("chargingchange")}} イベントのハンドラーを確立します。
let batteryIsCharging = false; navigator.getBattery().then(function(battery) { batteryIsCharging = battery.charging; battery.addEventListener('chargingchange', function() { batteryIsCharging = battery.charging; }); });
Battery Status API をご覧ください。
仕様書 | 状態 | 備考 |
---|---|---|
{{SpecName("Battery API", "#dom-navigator-getbattery", "Navigator.getBattery()")}} | {{Spec2("Battery API")}} | 初回定義 |
{{Compat("api.Navigator.getBattery")}}
Feature-Policy
の {{HTTPHeader("Feature-Policy/battery", "battery")}} 機能