我可以在Android设备上运行的混合应用程序(离子1 / cordova)中使用服务工作者吗?我尝试在Android设备上运行的离子应用程序上安装服务工作程序时遇到一些错误,因为android使用文件协议来提供文件,而服务工作者要求文件由HTTPS协议或http提供(仅限localhost) :
服务工作者注册期间出错:DOMException:失败 注册ServiceWorker:当前源的URL协议 (' file://')不受支持。
它不是在移动浏览器上运行的传统渐进式Web应用程序,而是在Android设备上运行(webview + cordova)。
我需要实现这一点,以便在我的api调用中利用我的应用程序缓存策略(使用来自谷歌的sw-precache e sw-toolbox)。
答案 0 :(得分:2)
实际上,根据caniuse,它是受支持的。问题在于使用的协议。
如果您阅读Service Workers,您会在先决条件中看到生产中您需要使用HTTPS
。
使用Crosswalk可能有所帮助,请查看XWALK-5919。