1)基于Cordova(Webview)的android应用。
2) 根据设备设置启动应用程序和屏幕超时。
3) 从应用程序方面我们没有获取任何 SCREEN_BRIGHT_WAKE_LOCK 或 ON_AFTER_RELEASE。
4) 当应用程序置于后台并置于前台时,设备屏幕灯永远不会超时。
4) 从应用程序方面我们没有获取任何 SCREEN_BRIGHT_WAKE_LOCK 或 ON_AFTER_RELEASE。
5) 基本上当 PowerManager 进入前台时需要 ON_AFTER_RELEASE |代表我们的应用程序 10311 的 SCREEN_BRIGHT_WAKE_LOCK(0x2000000a) 唤醒锁定并且屏幕保持打开状态。
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 没有看到问题。
使用的设备:Note 4(5.0.1)
WebView 版本:59.0.3071.125
最佳答案
你可以尝试使用这个插件:
https://github.com/EddyVerbruggen/Insomnia-PhoneGap-Plugin
window.plugins.insomnia.keepAwake() to keep the screen awake
window.plugins.insomnia.allowSleepAgain() to allow sleep again
关于Android:设备屏幕不会与最新的 android 系统 WEBVIEW 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45711586/