2013-05-07

Battery Status API

先日、横山さんのポストを拝見し、 Battery Status API なるものがあることを初めて知った次第。というわけで、どんなものなのかちょっと見てみました。

w3c のドキュメントを見ると、とてもシンプルです。 NavigatorBattery と BatteryManager という interface が定義され、 window.navigator.battery が BatteryManager を implement しているということのようです。

ただ、この Battery Status API 、今のところ Firefox でしか使えないようです。 ⇒ Mozilla のドキュメント

Battery Status API では充電中かどうかや、バッテリーの残量を見ることができますから、バッテリーが心もとない時にはがんばらないとかできそうなのですが。他の環境でも使えるようになるのかなー。

BatteryManager は read only の attribute を四つ持っています。

charging: boolean
充電中なら true
chargingTime: double
充電完了までの時間 (単位は秒)
dischargingTime: double
バッテリーの残り時間 (単位は秒)
level: double
満充電を 1.0 とした割合

また、個々の attribute に対応した event handler もあります。

onchargingchange
event type は'chargingchange'
onchargingtimechange
event type は 'chargingtimechange'
ondischargingtimechange
event type は 'dischargingtimechange'
onlevelchange
event type は 'levelchange'

で、簡単なサンプル。 chargingTime と dischargingTime にそれなりの値が表示されるまでには、充電 (あるいは放電) 開始してから多少の時間が必要です。ただ、これを Geeksphone PEAK でみてみると、 chargingTime と dischargingTime が取れていないようなんです。

ちなみに、 Firefix OS Simulator だと値がとれています。 Geeksphone PEAK 以外の、例えば Xperia Z 上の Firefox for Android でも、値を取得できています。 KEON でも取れないのかしらん。

0 件のコメント:

コメントを投稿