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

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

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

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

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

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

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

PHPz
PHPz

学习是最好的投资!

全部回复(1)
阿神

你的js调用时机是怎样的

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号