Baz*_*Baz 5 javascript android cordova
我有一个Android应用程序,我从node.js webpack项目创建.
当我在手机上安装我的应用程序时,我注意到它在手机睡眠时会睡觉.所以例如,我有一个javascript计时器停止被调用:
pingTimer=setInterval(ping,pingInterval);
Run Code Online (Sandbox Code Playgroud)
用于pingInterval.如何阻止我的应用程序进入睡眠状态?最终,我会希望我的应用程序进入睡眠状态,但现在停止手机睡眠是我最好的选择.
UPDATE
我按照这里描述的说明操作:
但没有运气.
您可以使用的最佳选择是WakeLock api
在for中添加权限manifest filewakeLock
<uses-permission android:name="android.permission.WAKE_LOCK" />
Run Code Online (Sandbox Code Playgroud)
然后您可以根据您的修改添加以下内容,如MDN行为中所建议的那样
function forPingTimer(){
var lock = window.navigator.requestWakeLock('screen');
//set timeout or until the timer expires
}
Run Code Online (Sandbox Code Playgroud)
并使用该lock.unlock();功能释放锁定.
要么
对于cordova应用程序,您也可以使用插件失眠在config文件中进行的更改如文档中所述,它可以简单地以下列方式使用
function forPingTimer(){
//as long as the app runs or set the timeout here or wrap it in a promise
//Simply calling window.plugins.insomnia.keepAwake() to keep awake
}
//window.plugins.insomnia.allowSleepAgain() to sleep again until the timer after the timer is fulfilled
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6652 次 |
| 最近记录: |