为什么我的PWA在从主屏幕启动时不会使用服务人员?

时间:2018-05-17 18:52:48

标签: mobile safari service-worker homescreen

我正在通过Google的工作箱将我的应用从AppCache升级到服务工作者。

结果:

    • 测试设置:devtools
    • 备注:运行良好,未在Android上使用chrome进行测试
  • iPhone:

    • 测试设置:将手机置于airplain模式
    • 在浏览器中打开:工作得很好,但它确实显示了一个本机弹出窗口警告,无法打开页面,因为无法访问网络。应用程序加载此警告后可以使用。

    • 从主屏幕打开:相同的本机弹出窗口警告无法加载页面,因为无法访问网络。应用 在后台加载

当我重新连接到网络并从我的主屏幕加载应用程序时,它会命中我的服务器以获取sw.js和precache-manifest但它不会抓取任何其他资产它启动很好。

那么,当我从主屏幕启动应用程序时,为什么我不能离线运行我的应用程序?这是服务工作者的错误,我应该恢复到App Cache还是有其他人让这个工作?

谢谢!

进一步调试:

我已将Safari的devtools连接到我的iPhone,现在我在控制台中看到以下内容:

[Error] Failed to load resource: The Internet connection appears to be offline. (precache-manifest.74ba0448495d9599f20233bb79d47c66.js, line 0)
[Error] Failed to load resource: The Internet connection appears to be offline. (sw.js, line 0)

所以,尝试加载服务工作者并且它是预先缓存清单是很难的。

我有另一个应用程序仍然会回到AppCache并且它显示类似的错误,无法加载sw.js但它完全可用(我甚至可以在我的手机处于飞行模式时从主屏幕启动它)

0 个答案:

没有答案