Android WebView 内部的定时器失效,按 home 键切到后台之后再切回来,定时器就恢复了,请问如何解决?
PHPz
PHPz 2017-04-17 17:08:51
0
1
783

具体表现就是我在 js 中调用:

setTimer(function () {console.log(111)}, 0);

是看不到打印的,远程调试发现回调函数根本就没有调用,但是等我按 home 键切换一下再切回来,回调函数会立即被调用。

我使用 webview 的方式就是在 xml 中添加一个 webview,然后注入一个 javascript interface。

而且我没有在任何地方调用 pauseTimers。

PS:这个问题我暂时解决了,就是在 onPageFinish 回调里 resumeTimers,但是这样其实是不合理的,因为这样会把后台的网页定时器也打开。而且问题的真正原因我没有找到。

PHPz
PHPz

学习是最好的投资!

Antworte allen(1)
阿神

你的js调用时机是怎样的

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage