唤醒锁

有限可用性

此功能不是基线功能,因为它在一些最常用的浏览器中无法使用。

安全上下文:此功能仅在 安全上下文 (HTTPS) 中可用,在一些或所有 支持的浏览器 中可用。

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 的浏览器中加载。

另请参阅