1)基于Cordova(Webview)的Android应用程序。
2)根据设备设置启动应用程序和屏幕超时。
3)从申请方面我们没有获得任何SCREEN_BRIGHT_WAKE_LOCK或ON_AFTER_RELEASE。
4)当app放到后台并进入前台时,设备屏幕灯不会超时。
4)从申请方面来看,我们没有获得任何SCREEN_BRIGHT_WAKE_LOCK或ON_AFTER_RELEASE。
5)基本上来到前台时,PowerManager会获得ON_AFTER_RELEASE | SCREEN_BRIGHT_WAKE_LOCK(0x2000000a)代表我们的应用程序10311唤醒锁定并且屏幕保持打开状态。
Line 58354: 08-14 22:49:22.280 D/PowerManagerService( 1088): [api] acquire WakeLock flags=0x2000000a tag=WindowManager uid=1000 pid=1088
08-14 22:50:22.000 I/PowerManagerService( 1088): [PWL] SCREEN_BRIGHT_WAKE_LOCK 'WindowManager' ON_AFTER_RELEASE (uid=1000, pid=1088, ws=WorkSource{10311}) (elapsedTime=59719)
6)启动Android系统WebView 59.0.3071.25 beta(无法正常工作)(2017年5月4日)
可以看到屏幕超时问题。
7)问题是没有看到使用chrome v59作为webview的android 7.0。
使用的设备:注释4(5.0.1)
Webview版本:59.0.3071.125
答案 0 :(得分:2)
您可以尝试使用此插件:
https://github.com/EddyVerbruggen/Insomnia-PhoneGap-Plugin
window.plugins.insomnia.keepAwake() to keep the screen awake
window.plugins.insomnia.allowSleepAgain() to allow sleep again