>  기사  >  웹 프론트엔드  >  배터리 상태를 구현하는 JavaScript 방법

배터리 상태를 구현하는 JavaScript 방법

coldplay.xixi
coldplay.xixi앞으로
2020-08-28 16:54:362909검색

배터리 상태를 구현하는 JavaScript 방법

[관련 그래픽 및 텍스트 권장 사항: js 튜토리얼(그래픽 및 텍스트)]

Mozilla Aurora 11부터 Firefox는 몇 가지 새로운 기능을 구현했으며 그 중 하나는 배터리 상태 인터페이스의 기본 구현입니다. 이 매우 간단한 인터페이스는 현재 배터리 수준, 충전 여부 및 일부 배터리 상태 변경 이벤트에 대한 정보를 제공할 수 있습니다. 효과를 보시죠!

배터리 객체는 window.navigator.battery에 저장되어 있지만, Firefox에서 이 인터페이스를 처음 구현하고 제공하기 때문에 아직까지는 window를 사용해야 합니다. .navigator.mozBattery 이런 작성 방법입니다. 이 mozBattery 개체에는 다음 속성이 있습니다. window.navigator.battery里,但因为这是火狐浏览器首次实现并提供这个接口,并未普及,你需要使用window.navigator.mozBattery这种写法。这个mozBattery对象有下列属性:

  • charging: 表示当前电池设备是否在充电。如果电池没有充电,这个值为false。如果为true,表明电池正在充电。当前的API实现里不能得到是否充满的信息,也无法判断当前设备是否有电池。
  • chargingTime: 是指距离电池充满还需要多久。
  • dischargingTime: 电池已使用时间
  • level: 表示电量等级,从0到1.0。当这个值为0时,表示电量耗尽,系统即将关机。如果为1.0,则表示电池满电。

针对这些状态,接口里提供了各自相应的事件,包括onchargingchange, onchargingtimechange, ondischargingtimechange, 和 onlevelchange

  • 충전: 현재 배터리 장치가 충전 중인지 여부를 나타냅니다. 배터리가 충전되지 않은 경우 이 값은 거짓입니다. true이면 배터리가 충전 중입니다. 현재 API 구현에서는 가득 찼는지 여부에 대한 정보를 얻을 수 없으며 현재 장치에 배터리가 있는지 확인할 수도 없습니다.
  • chargeTime: 는 배터리가 완전히 충전되기까지 걸리는 시간을 나타냅니다.
  • dischargeTime: 배터리 사용 시간.
  • level: 전력 수준을 0에서 1.0까지 나타냅니다. 이 값이 0이면 배터리가 소진되어 시스템이 곧 종료된다는 의미입니다. 1.0이면 배터리가 완전히 충전되었음을 의미합니다.
이러한 상태의 경우 인터페이스는 onchargechange, onchargetimechange, ondischargetimechange레벨변경. 기본 사용법은 간단합니다.

// 获取电池对象!
var battery = navigator.battery || navigator.webkitBattery || navigator.mozBattery;

// 显示一些有用属性值
console.warn("电池充电状态: ", battery.charging); // true
console.warn("电量水平: ", battery.level); // 0.58
console.warn("电池使用时间: ", battery.dischargingTime);

// 设置一些事件监听器
battery.addEventListener("chargingchange", function(e) {
	console.warn("电池充电状态变化: ", battery.charging);
}, false);
battery.addEventListener("chargingtimechange", function(e) {
	console.warn("电池充电时间变化: ", battery.chargingTime);
}, false);
battery.addEventListener("dischargingtimechange", function(e) {
	console.warn("电池使用时间变化: ", battery.dischargingTime);
}, false);
battery.addEventListener("levelchange", function(e) {
	console.warn("电量水平变化: ", battery.level);
}, false);

꽤 간단하지 않나요? 이 인터페이스는 모두 훌륭합니다. 간단하고 효율적이며 실용적입니다!

이 배터리 프로그래밍 인터페이스를 사용하는 이유는 무엇입니까? 브라우저(비네이티브)와 함께 패키지된 많은 모바일 애플리케이션은 시스템의 현재 상태를 알아야 하기 때문입니다. 일부 CPU는 전력에 매우 민감합니다. 특정 특수 작업을 처리하기 전에 기기에 전력이 충분해야 합니다. 앱은 전력이 부족하다는 점을 미리 알려주어야 하며 충전하시기 바랍니다.

관련 학습 권장사항: javascript 학습 튜토리얼

🎜

위 내용은 배터리 상태를 구현하는 JavaScript 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 webhek.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제