Insomnia插件承诺让设备保持清醒,window.plugins.insomnia.keepAwake()
直到window.plugins.insomnia.allowSleepAgain()
被调用。
但是对于某些应用程序,只有在应用程序处于活动状态时设备保持清醒才有意义。如果用户暂停应用程序并忘记他们已将其留在后台,那么允许睡眠而不是降低他们的电池电量会很好。
通常应用暂停所需的操作是通过pause
事件处理的:
function onDeviceReady() {
document.addEventListener("pause", onPause, false);
}
function onPause() {
window.plugins.insomnia.allowSleepAgain();
}
但是根据Cordova docs,iOS 上的 Pause 处理程序不能调用任何本机内容——其中包括 Insomnia 插件。
如何实现想要的功能?