唤醒锁
WakeLock
是 屏幕唤醒锁 API 的接口,可用于请求锁定,防止设备屏幕在应用程序需要保持运行时变暗或锁定。
该接口,以及系统唤醒锁,通过 Navigator.wakeLock
属性公开。
实例方法
request()
-
返回一个
Promise
,如果授予屏幕唤醒锁,则该 Promise 会完成并返回一个WakeLockSentinel
对象。
示例
以下代码等待
WakeLockSentinel
对象的请求,并在请求获得批准后继续。
WakeLock.request()
方法被包装在一个 try...catch
语句中,以捕获 Promise 可能被拒绝 的情况,例如由于设备电量不足而导致的拒绝。
js
try {
const wakeLock = await navigator.wakeLock.request("screen");
} catch (err) {
// the wake lock request fails - usually system related, such being low on battery
console.log(`${err.name}, ${err.message}`);
}
请注意,屏幕唤醒锁可能在授予后被设备撤销。返回的 WakeLockSentinel
可用于检查锁的状态,或手动取消持有的屏幕唤醒锁。
规范
规范 |
---|
屏幕唤醒锁 API # the-wakelock-interface |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。