iOS 12 Safari 不支持某些 PWA(渐进式 Web 应用程序)的离线功能。 Safari 似乎没有正确缓存这些网络应用程序中的资源。
例如,以下 PWA 无法在 iOS 12 和 12.1 中离线工作,但它们在 Android 或 Windows 上的 Chrome 中都能完美工作:
谷歌用来演示 Service Worker 的 Air Horner PWA:
空气喇叭 https://airhorner.com
还有这两个:
2048 谜题 https://2048-opera-pwa.surge.sh
语音备忘录 https://voice-memos.appspot.com
重现步骤(100% 可重现):
- 使用 Safari 访问 PWA(iOS 12 或 12.1)
- 关闭 Safari 中的 PWA 选项卡
- 按 iPhone 上的主页按钮将 Safari 设置为后台
- 按 iPhone 电源按钮关闭屏幕
- 再次按下 iPhone 电源按钮以唤醒手机
- 从 iPhone 控制中心关闭所有网络连接(wifi 和蜂窝网络)
- 打开 Safari,再次访问 PWA --> Web 应用程序加载失败
这已经困扰我很长时间了,因为我自己的网络应用程序也有类似的问题 - 在 Android / Windows 上的 Chrome 中工作正常,但仅在 iOS 12 Safari 上失败。你知道 iOS 12 Safari 有什么特别之处吗?非常感谢!
我遇到了同样的问题,在没有 Workbox 的情况下使用 Service Worker 解决了问题 - 应用程序在没有互联网连接的情况下启动,但缓存出现了问题 - 它无法正常工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)