我有一个使用唤醒锁的网络应用程序(见下文) - 我已注册原始试用版并将代码添加到我的 index.html。- 见https://lucid-franklin-4016c2.netlify.com/
当我在最新版本的 Android Chrome 中加载页面时,手机保持唤醒状态,并且我用于此正在运行的应用程序的文本转语音消息工作正常。
我还将它设置为 PWA(服务人员、清单、...-在灯塔中都很好)。但是,在“将页面添加到主屏幕”并从那里加载 PWA 之后,手机确实会进入睡眠状态。它会继续计时,并且可以在后台播放声音文件,但文本转语音功能已停用。
这是预期的行为吗?
我的主要需求是文字转语音,而不是让手机保持清醒,因为无论如何,地理定位似乎在手机处于睡眠状态时起作用。还有什么我可以做的吗?
// The wake lock sentinel.
let wakeLock = null;
// Function that attempts to request a wake lock.
export const requestWakeLock = async cb => {
try {
wakeLock = await navigator.wakeLock.request("screen");
wakeLock.addEventListener("release", () => {
console.log("Wake Lock was released");
});
console.log("Wake Lock is active");
} catch (err) {
console.error(`${err.name}, ${err.message}`);
cb({
tag: "error",
payload: "wakeLock not supported"
});
}
};