BatteryManager(电源管理)

BatteryManager 接口提供方法获取系统电量。 

navigator.getBattery 方法返回一个promise对象,该promise将提供一个BatteryManager接口,你可以从Battery Status API 查询到相关信息。

属性

BatteryManager.charging 只读
一个布尔值,说明当前电池是否正在充电。
BatteryManager.chargingTime 只读
一个数字,代表距离充电完毕还需多少秒,如果为0则充电完毕。
BatteryManager.dischargingTime 只读
一个数字,代表距离电池耗电至空且挂起需要多少秒。
BatteryManager.level 只读
一个数字,代表电量的放大等级,这个值在 0.0 至 1.0 之间。

事件处理器

BatteryManager.onchargingchange
chargingchange事件处理器;电池充电状态更新时被调用。
BatteryManager.onchargingtimechange
chargingtimechange事件处理器;电池充电时间更新时被调用。
BatteryManager.ondischargingtimechange
dischargingtimechange事件处理器;电池断开充电时间更新时被调用。
BatteryManager.onlevelchange
levelchange事件处理器;电池电量更新时被调用。

方法

继承自EventTarget:

EventTarget.addEventListener()
在EventTarget上注册特定事件类型的事件处理程序。
EventTarget.removeEventListener()
EventTarget中删除事件侦听器。
EventTarget.dispatchEvent()
将事件分派到此EventTarget。

Mozilla chrome 代码的其他方法

Mozilla扩展,供JS实现的事件目标使用以 实现 on* 属性。另见 WebIDL bindings 绑定。

  • void setEventHandler(DOMString type, EventHandler handler)
  • EventHandler getEventHandler(DOMString type)

规格Specifications

Specification Status Comment
Battery Status API Candidate Recommendation Initial definition

浏览器兼容性

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
基本支持 39.0 10 (10) moz
16 (16)[1]
未实现 25 未实现
Feature Android Android Webview Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile Chrome for Android
基本支持 未实现 40.0 10.0 (10) moz
16.0 (16)[1]
未实现 25[2] 未实现 42.0[2]

[1] 在Firefox 10.0中默认无效,但可设定preference dom.battery.enabledtrue从而使其有效化。自Firefox 11.0起,mozBattery默认有效。Battery API现能被支持与Android,Windows,和安装了UPower的Linux。自Gecko 18.0 (Firefox 18.0 / Thunderbird 18.0 / SeaMonkey 2.15)也能支持MacOS。Firefox还为被弃用的navigator.battery提供支持。

[2] BatteryManager.chargingTimeBatteryManager.dischargingTime的值总是等于无穷。

其他

文档标签和贡献者