MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

Battery Status API

A API Battery Status, mais conhecida como Battery API, fornece informações sobre o nível de carga da bateria presente no sistema e permite que você seja notificado por eventos que são enviados quando os níveis sofrem alterações. Isto pode ser usado para ajustar a utilização de recursos do seu aplicativo, reduzindo a quantidade de energia drenada por ele quando a bateria estiver em nível baixo, ou ainda para salvar mudanças antes da bateria acabar, prevenindo a perda de dados.

A API Battery Status API estende Window.navigator com uma propriedade Navigator.battery que é um objeto BatteryManager,  e adiciona alguns novos eventos que você pode receber para monitorar o status da bateria.

Exemplo

Neste exemplo, nós observamos as mudanças em ambos os status de carregamento (se estamos ou não conectados e carregando) e para mudanças no nível da bateria. Isto é feito escutando pelos eventos chargingchange e levelchange, respectivamente.

var battery = navigator.battery || navigator.mozBattery || navigator.webkitBattery;

function updateBatteryStatus() {
  console.log("Status da bateria: " + battery.level * 100 + " %");

  if (battery.charging) {
    console.log("A bateria está carregando"); 
  }
}

battery.addEventListener("chargingchange", updateBatteryStatus);
battery.addEventListener("levelchange", updateBatteryStatus);
updateBatteryStatus();

Veja também o exemplo na especificação.

Especificações

Especificação Status Comentário
Battery Status API Working Draft Especificação Inicial.

Compatibilidade entre navegadores

Funcionalidade Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suporte básico Não suportado
Chrome para Android: crbug.com/135863
Chrome OS: crbug.com/122593
10 (10) moz [1]
16 (16) (sem prefixo) [2]
Não suportado Não suportado Não suportado
Funcionalidade Android Chrome para Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Suporte básico ? Não suportado 10.0 (10) moz [1]
16.0 (16) (sem prefixo) [2]
Não suportado Não suportado Não suportado

Notas para o Gecko

[1] Desabilitado por padrão no Firefox 10.0, mas pode ser habilitado alterando a preferência dom.battery.enabled para true. A partir do Firefox 11.0, mozBattery é habilitado por padrão.

[2] A Battery API é atualmente suportada no Android, Windows e Linux com UPower instalado. O suporte para MacOS está disponível a partir do Gecko 18.0 (Firefox 18.0 / Thunderbird 18.0 / SeaMonkey 2.15);

Veja também

Etiquetas do documento e colaboradores

 Colaboradores desta página: eliezerb, rbrandao
 Última atualização por: eliezerb,