Chrome服务工作者iOS支持

Ale*_*ker 7 google-chrome ios service-worker

几个月前,Apple宣布支持iOS 11.3的Service Worker,我最近开始尝试让服务工作者在iOS上工作.在Safari上它按预期工作,在访问网站后,它可以脱机工作.但是,当尝试在Chrome中使用相同的功能时,我的结果是间歇性的.具体来说,服务工作者只会每隔一页刷新一次,脱机后的原始刷新是其中一个不工作的.

我知道iOS上的Chrome是基于Safari的一个版本,因此我对此行为感到困惑.

这是由于Chrome iOS对服务工作者的支持不完整吗?因为它是iOS上的Chrome,我不确定是否有任何简单的方法来调试它,所以任何其他提示,以帮助追踪问题将不胜感激.谢谢!

Ana*_*and 9

Chrome for iOS目前不支持服务工作者(截至2018年5月),如果您对此感兴趣,则"添加到主屏幕"选项也不可用.您遇到的任何离线页面加载都应来自常规浏览器缓存.

以下是 Apple网站套件页面的官方文档.

更新:此帖的先前版本声明使用WKWebView在所有应用程序中都可以使用Service Worker API.目前,它仅适用于Safari,使用SFSafariViewController的应用程序以及保存在主屏幕上的Web应用程序.

值得注意的是,Chrome使用WKWebView作为iOS中的浏览器引擎,根据上述声明(您可以在上面提供的链接中找到),它还没有服务工作者支持.因此,在iOS中使用Service worker的唯一方法是使用Safari浏览器或在本机应用程序中使用上述受支持的Web视图之一.

这是一篇关于所有PWA功能仍然缺少iOS 的文章.请记住,这是一个快速发展的领域.始终检查现在是否适用,特别是如果文档/文章变老了.

这是一个适配器,可帮助调试Chrome开发工具,用于加载iOS - webkit/safari的页面.希望它有一天像Android Chrome调试一样简单!

  • 我在 caniuse.com 的 GitHub 存储库上恢复了 2017 年的一个问题?我已经提出帮助澄清有关 ServiceWorkers 的浏览器支持的信息。https://github.com/Fyrd/caniuse/issues/3519 如果您支持这个想法,请给我点赞或评论。 (2认同)