背景与价值屏幕休眠会中断视频/演示/计时等体验;在用户明确场景下保持常亮提升连续性。基本用法let lock: any;

async function requestWakeLock() {

try {

lock = await (navigator as any).wakeLock.request('screen');

lock.addEventListener('release', () => console.log('wake lock released'));

document.addEventListener('visibilitychange', () => {

if (document.visibilityState === 'visible' && !lock.released) requestWakeLock();

});

return { ok: true };

} catch (e) { return { ok: false, error: String(e) }; }

}

function releaseWakeLock() { try { lock?.release(); } catch {} }

权限与时机仅在用户手势触发(播放/开始按钮)后请求;提供显式关闭入口。在失去可见性时自动释放;返回前台再申请。指标验证(Chrome 128/Android)成功率:在手势触发与清晰文案下 ≥ 97%。能耗影响:连续 30min 常亮增加电量消耗 ≤ 6%(抽样设备)。误保持率:用户离开或不可见时保持为 0(自动释放)。回退策略不支持环境:提示使用系统设置或保持交互以防自动休眠。测试清单视频/演示/计时场景下常亮稳定;切后台自动释放,返回可重新申请。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部