Battery API bylo aktualizováno; přečtěte si aktualizaci JavaScript Battery API, abyste viděli nový vzor kódu!
Mozilla Aurora 11 byla nedávno vydána s řadou nových funkcí. Jednou z těchto skvělých nových funkcí je jejich počáteční implementace Battery Status API. Toto jednoduché API vám poskytuje informace o aktuální úrovni nabití baterie, jejím stavu nabití a umožňuje vám být informováni o změnách prostřednictvím několika událostí. Pojďme se na to podívat!
Zobrazit ukázku
Objekt baterie se nachází na window.navigator.battery
, ale protože se jedná o počáteční nabídku Mozilly a rozhraní API ještě není stmeleno, budete muset použít window.navigator.mozBattery
. Užitečné mozBattery
vlastnosti zahrnují:
charging:
Představuje, zda se baterie systému nabíjí. Atribut musí být nastaven na hodnotu false, pokud se baterie vybíjí, a na hodnotu true, pokud se baterie nabíjí, je plná, implementace není schopna hlásit stav nebo není k systému připojena žádná baterie nebo jinak.chargingTime:
Představuje čas zbývající v sekundách do úplného nabití baterie systému.dischargingTime:
Představuje čas v sekundách zbývající do úplného vybití baterie systému a do pozastavení systému.level:
Představuje aktuální úroveň nabití baterie v rozsahu od 0 do 1,0. Atribut musí být nastaven na 0, pokud je baterie systému vybitá a systém má být pozastaven, a na 1,0, pokud je baterie plná, implementace není schopna hlásit úroveň baterie nebo není k systému připojena žádná baterie. .
K dispozici jsou události pro každý z těchto stavů, včetně onchargingchange
, onchargingtimechange
, ondischargingtimechange
a onlevelchange
. Základní použití je jednoduché:
// Get the battery! var battery = navigator.battery || navigator.webkitBattery || navigator.mozBattery; // A few useful battery properties console.warn("Battery charging: ", battery.charging); // true console.warn("Battery level: ", battery.level); // 0.58 console.warn("Battery discharging time: ", battery.dischargingTime); // Add a few event listeners battery.addEventListener("chargingchange", function(e) { console.warn("Battery charge change: ", battery.charging); }, false); battery.addEventListener("chargingtimechange", function(e) { console.warn("Battery charge time change: ", battery.chargingTime); }, false); battery.addEventListener("dischargingtimechange", function(e) { console.warn("Battery discharging time change: ", battery.dischargingTime); }, false); battery.addEventListener("levelchange", function(e) { console.warn("Battery level change: ", battery.level); }, false);
Slíbil jsem jednoduché API, ne? Baterie API je perfektní API:jednoduché, efektivní a zaměřené!
Zobrazit ukázkuProč tedy používat API baterie? Protože mnoho mobilních aplikací žije uvnitř obalu prohlížeče (nejsou zcela „nativní“), je skvělé mít přístup k systémovým informacím. Některé procesy jsou náročné na energii a může být nutné upozornit uživatele před zahájením procesu, že jeho zařízení má nízkou kapacitu baterie. Ať tak či onak, skutečná užitečnost tohoto jednoduchého API by se měla brzy projevit!