是否可以通过网络浏览器访问移动设备电池状态或充电?

时间:2015-04-29 16:53:02

标签: javascript android ios api mobile

我花了一些时间环顾四周,看看是否有可能通过网络浏览器api访问移动设备电池状态或充电但是没有找到任何资源或甚至没有讨论这个主题。这让我相信这是不可能的,因为它不符合任何理由(安全性?)。

无论哪种方式,我发现有可能通过iOS,Cordova,Phonegap,Appcelerator等获得电池状态/充电百分比..所有这些都有我可能能够开始工作的API可能适用于什么我正在研究开发。然而,所有这些解决方案仍然需要应用程序作为本机应用程序运行 - 我希望能够在设备上的浏览器中运行它。

这可能吗?如果是这样,我应该研究哪种浏览器API?

3 个答案:

答案 0 :(得分:3)

iOS浏览器不支持Battery Status API。桌面Chrome基本上是唯一支持它的浏览器:

http://caniuse.com/#feat=battery-status

enter image description here

答案 1 :(得分:3)

感谢Tapani和Michael,

你的帮助绝对指出了我正确的方向。通过您提供的信息,我能够找到有关规范的更多信息以及支持api的浏览器。

  • Chrome 42.0.2311.90(64位)似乎不支持电池API。
  • Chromium Version 22.0.1225.0(149762)也不支持电池API。
  • Chrome Canary版本44.0.2387.0 canary(64位)支持MDN(https://developer.mozilla.org/en-US/docs/Web/API/Battery_Status_API)上的规范,但不支持navigator.battery命名空间。
  • Firefox支持navigator.battery命名空间,但不支持navigator.getBattery()函数。
  • Safari版本8.0.5(10600.5.17)不支持任何涉及电池api的内容。

我没有在手机上查看此内容,但我不怀疑移动浏览器会更加一致,甚至比任何上述浏览器更好地实现。看起来相当新,浏览器组织仍在试图弄清楚并且正在努力遵循文档化的规范。稍微提醒我一点CSS弹性框。

谢谢你们!

答案 2 :(得分:1)

我已经为您创建了一个演示,因此您可以检查浏览器是否支持Battery API。

演示:https://elgervanboxtel.nl/blog/#/post/battery-api

正如您在caniuse.com上看到的那样,它尚未被广泛支持。