🔋 Battery Status API – это интерфейс Web API, который позволяет веб-страницам получать информацию о состоянии батареи устройства пользователя. С его помощью можно узнать уровень заряда, подключено ли устройство к сети питания и оставшееся время работы.
📕 Дока на MDN
Какие возможности есть у Battery Status API:
🔖 level - проверка текущего уровня заряда батареи 🔖 charging - определение, подключено ли устройство к зарядке 🔖 chargingTime - оценка времени до полной зарядки 🔖 dischargingTime - оценка оставшегося времени работы от батареи
🛠 Пример использования
navigator.getBattery().then(battery => { console.log(Заряд: ${battery.level * 100}%); console.log(Зарядка: ${battery.charging ? "Да" : "Нет"}); console.log(Время до полной зарядки: ${battery.chargingTime} сек.); console.log(Оставшееся время работы: ${battery.dischargingTime} сек.`);
});
🔄 Обновление данных в реальном времени
Можно подписаться на события изменения состояния батареи:
navigator.getBattery().then(battery => { function updateBatteryStatus() { console.log(Заряд: ${battery.level * 100}%); console.log(Зарядка: ${battery.charging ? "Да" : "Нет"}`);
}
battery.addEventListener("levelchange", updateBatteryStatus); battery.addEventListener("chargingchange", updateBatteryStatus); });
⚠️ Поддержка браузерами
Battery Status API поддерживается не во всех браузерах. Проверка поддержки в браузере:
`if ("getBattery" in navigator) { console.log("Battery API поддерживается!"); } else { console.log("Battery API не поддерживается!"); }
💡Где может быть полезно?
-
Оптимизация работы веб-приложений (например, уменьшение потребления ресурсов при низком заряде).
-
Отображение уведомлений о разряде батареи пользователю.
-
Автоматическое включение режима экономии энергии.```