移动浏览器中的Web工作者

Jør*_*gen 7 javascript mobile html5 android ios

我正在开发一个需要定期轮询Web服务的移动应用程序(使用setInterval).我已经制作了基于HTML5的原型,但是当移动浏览器进入后台时,javascript执行被暂停.

我研究了为iOS和Android创建原生应用程序.在iOS上,这可以通过在应用程序进入后台模式时要求有限的处理时间来完成.在Android上我想我必须创建一个从应用程序启动和停止的服务.

但是,我看到在iOS5上的Safari中,Web工作者支持又回来了,这已经在Android浏览器中支持了一段时间.这让我想知道,当他们在后台时,我可以使用网络工作者在移动浏览器中运行javascript吗?

Mik*_*maa 3

答案是不。

不幸的是,采用 HTML5 技术的后台应用程序不适用于移动设备。移动浏览器不仅会在页面处于后台时主动暂停页面,而且如果他们愿意的话,他们还可以杀死整个浏览器(选项卡)。无论您是否有网络工作者,都不会影响这一点。

在这些操作系统上,甚至在后台运行本机应用程序也不是小事。

我建议你的是

  • 从 JS 中提取后台工作部分并用本地语言(Java、iOS)编写

  • 对您的应用程序 UI 使用 Phonegap 等类似的包装器