闽公网安备 35020302035485号
const isWakeLockSupported = 'wakeLock' in navigator;如果isWakeLockSupported为true,则表示当前浏览器支持Wake Lock功能。
Opera: 同样基于Chromium,支持情况与Chrome相似。
let wakeLock = null;
// 堆代码 duidaima.com
const requestScreenWakeLock = async () => {
try {
wakeLock = await navigator.wakeLock.request('screen');
console.log('屏幕保持唤醒状态成功!');
} catch (err) {
console.error(`错误:${err.name}, 消息:${err.message}`);
}
};
requestScreenWakeLock();
释放屏幕唤醒锁if (wakeLock) {
wakeLock.release().then(() => {
wakeLock = null;
console.log('屏幕唤醒锁已释放');
});
}
监听唤醒锁的释放if (wakeLock) {
wakeLock.addEventListener('release', () => {
console.log('屏幕唤醒锁已被释放');
});
}
根据文档可见性重新获取唤醒锁document.addEventListener('visibilitychange', async () => {
if (document.visibilityState === 'visible' && !wakeLock) {
await requestScreenWakeLock();
}
});
结论