在 chrome 中获取电池状态

Posted

技术标签:

【中文标题】在 chrome 中获取电池状态【英文标题】:Getting battery status in chrome 【发布时间】:2013-08-03 16:31:32 【问题描述】:

我正在尝试使用以下代码在 chrome 浏览器中获取电池状态

var battery=navigator.battery||navigator.webkitBattery||navigator.mozBattery;
document.writeln(Math.round(battery.level*100)+"%");

它在 mozilla 中工作,但在 chrome 中不工作。

This SO 上的问题表示它已从 chrome 中删除,但在一年前就被问到了。 有没有办法?

注意:电池状态是指台式电脑的电池状态。它是针对计算机的,而不是针对移动设备的。

【问题讨论】:

电池状态是指台式电脑的电池状态。它是用于计算机的,而不是用于移动设备的。 sitepoint.com/introducing-the-battery-status-api 写于去年年底,但同样的问题。也许 Chrome 没有实现它。 ChromeOS (crbug.com/122593) 中尚不可用,因此桌面版 Chrome 中可能也不存在。 好吧,据我所知,大多数台式机都没有电池。你确定你说的不是笔记本电脑? @11684:是的,我也是指笔记本电脑。 【参考方案1】:

navigator.getBattery()

虽然不鼓励使用它,因为它被认为已过时,但从技术上讲,您可以使用 navigator.getBattery() 访问 BatteryManager.level,因为它在 Chrome 中是 currently supported:

(async () => 
  const battery = await navigator.getBattery();
  const battery_level = `$battery.level * 100%`;

  console.log(battery_level); // 100%
)();

【讨论】:

【参考方案2】:

我找到了这个 Chrome 扩展程序,但它们要求您为您的计算机下载一个英特尔插件。 (扩展中有一个链接)

Chrome 扩展程序:http://chrome.google.com/webstore/detail/battery-status/bpbkgeonjocononjcojndjbfpcodainm

【讨论】:

以上是关于在 chrome 中获取电池状态的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在 WinRT/Windows 通用应用程序的后台任务中检索手机电池状态?

电池状态总是返回 Null

几个有趣的WEB设备API 前端提高B格必备——电池状态&震动api

Cordova 电池状态 - 如何立即获得水平?

如何在android中使用系统电池状态更新通知

如何在 iOS 中获取电池温度详细信息?