WakeLock: метод request()
Ограниченное использование
Эта функция не относится к Baseline, так как она не работает в некоторых из наиболее широко используемых браузеров.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.
Метод request() интерфейса WakeLock возвращает Promise, который выполняется с объектом WakeLockSentinel, если системный экранный блокиратор пробуждения предоставлен.
Блокировка пробуждения экрана предотвращает затемнение или блокировку экранов устройств, когда приложение должно продолжать работу.
Синтаксис
request(type)
Параметры
typeНеобязательно-
Строка, определяющая тип блокировки пробуждения экрана из следующих перечисленных типов:
screen-
Препятствует выключению экрана. Документы, которые видны, могут получить блокировку пробуждения экрана.
Если параметр type не указан явно, метод request() по умолчанию использует тип screen.
Значение возврата
A Promise, который разрешается объектом WakeLockSentinel.
Исключения
-
NotAllowedErrorDOMException -
Выбрасывается, когда блокировка пробуждения недоступна, что может произойти по следующим причинам:
- Использование этой функции заблокировано политикой Политики разрешений.
- Документ не полностью активен.
- Состояние видимости документа равно
hidden. - Пользовательский агент не смог получить блокировку пробуждения платформы. Например, это может произойти, если у устройства низкий заряд батареи.
Примеры
Следующая асинхронная функция запрашивает объект WakeLockSentinel. Метод request() заключён в оператор try...catch для обработки случаев, когда браузер отклоняет запрос по любой причине.
const requestWakeLock = async () => {
try {
const wakeLock = await navigator.wakeLock.request("screen");
} catch (err) {
// The wake lock request fails - usually system-related, such as low battery.
console.log(`${err.name}, ${err.message}`);
}
};
requestWakeLock();
Блокировка пробуждения экрана может быть отозвана устройством после того, как она была предоставлена. Возвращённый объект WakeLockSentinel может быть использован для проверки состояния блокировки и/или для ручного отмены удерживаемой блокировки пробуждения экрана.
Спецификации
Совместимость браузеров
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
request |
84 | 84 | 126 | 70 | 16.4 | 84 | 126 | 60 | 16.4Не работает в автономных приложениях домашнего экрана. См. ошибку 254545. |
14.0 | 84 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WakeLock/request