배터리 API 사용 – WebAPI

기기나 컴퓨터의 배터리 남은 양을 측정할 수 있는 기능은 현재 상태를 사용자에게 알려주고자 할 때 도움이 됩니다. 이 기능을 모질라의 WebAPI내에 배터리 API란 이름으로 추가했습니다.

배터리 객체 얻기

먼저 배터리 객체를 얻는 것이 중요합니다.

var battery = navigator.mozBattery;

배터리 객체 속성

기기에 있는 배터리의 충전 정도를 알수 있는 다음과 같은 몇 개의 속성이 있습니다.

level
배터리의 현재 충전 정도를 확인. 0에서 1사이의 값을 반환.
charging
진리값. 기기나 컴퓨터가 현재 충전 중인지를 반환.
chargingTime
완전히 충전될 때까지 남은 시간(초). 충전 중일 때 사용 가능.
dischargingTime
방전될 때까지 남은 시간(초). 충전하지 않고 있을 때 사용 가능.

// 배터리 충전 정도를 백분율로 얻기
var batteryLevel = battery.level * 100 + "%";

// 기기가 충전중인지 아닌지 상태값 얻기
var chargingStatus = battery.charging;

// 기기가 완전히 충전될 때 까지의 시간
var batteryCharged = battery.chargingTime;

// 기기가 방전될 때 까지의 시간
var batteryDischarged = battery.dischargingTime;

이벤트

배터리의 상태 변경 감지를 위한 4개의 이벤트가 있습니다.

levelchange
배터리의 충전 정도가 변하는 경우
chargingchange
기기가 충전중이다가 충전이 끊기거나 그 반대인 경우를 감지
chargingtimechange
(충전을 위해 연결시) 기기의 충전 시간이 변경됐을 때
dischargingtimechange
(충전이 끊겼을 때) 기기의 방전 시간이 변경됐을 때

battery.addEventLister("levelchange", function () {
    // 기기의 배터리 충전 정도 변경
}, false);

battery.addEventListener("chargingchange", function () {
    // 기기가 전원에 연결됐거나 아니면 연결이 끊겼을 때
}, false);

battery.addEventListener("chargingtimechange", function () {
    // 기기의 충전 시간이 변경됨
}, false);

battery.addEventListener("dischargingtimechange", function () {
    // 기기의 방전 시간이 변경됨
}, false);

기기 지원

배터리 API는 다음의 환경하에 Firefox 베타에서 지원됩니다.

  • 안드로이드 (현재는 Firefox Aurora 만 지원)
  • 윈도우즈
  • 리눅스 (UPower가 설치된 경우. 대부분의 최근 배포판에는 포함돼 있음)

현재는 Mac OS X를 위해 작업하고 있는 사람이 없습니다. 그러므로, 만약에 능력이 있는 분이 있다면, 이 부분에 기여를 위해 한 번 뵙고 싶습니다!

데모와 코드

기본적인 배터리 API 데모를 마련해 두었습니다. 코드는 또한 GitHub의 배터리 API 저장소에서 내려 받을 수도 있습니다.

여러분이 가진 기기에서 배터리 API가 기대한 대로 동작하지 않는 경우, 버그로 등록 해 주시기 바랍니다. 그러면, 저희가 살펴볼 수 있을 것입니다. 이 API는 현재 실험적인 상태입니다. 그러므로, 아직 실 사용에는 문제가 있을 수 있습니다.

원저자: Robert Nyman – 원문으로 가기

작성자: Kim, Myung Shin

Kim, Myung Shin가 작성한 문서들…


댓글이 없습니다.

댓글 쓰기