【发布时间】:2019-07-17 13:31:49
【问题描述】:
我对 iPhone 上的PWA 感到很困惑。
首先,在展示我的代码之前,我试图检查一个好的网络应用程序的外观。
在 Google 中搜索最佳渐进式网络应用程序时,我在我的 iPhone 上的Safari 中打开了所有这些应用程序,然后单击了Share button,然后单击了Add To Home Screen。 (优步、Flipboard、Twitter、谷歌地图、速卖通等)
当从主屏幕打开图标时,它会再次打开Safari,与我所在的页面相同,就像任何网站一样。
- 没有全屏
- 没有单独的窗口(只是像网站一样在 Safari 中打开)
- 没有启动画面
- 在 Chrome 上 - 没有“添加到主屏幕”按钮
基本上只是一个带有图标的网站。
然后我试图在我的网站上使用我页面上的 Google 的 pwacompat 库来这样做。
我已将这些添加到页面head:
<link rel="manifest" href="manifest.webmanifest" />
<meta name="apple-mobile-web-app-capable" content="yes">
<link rel="apple-touch-icon" href="../images/logo.png">
然后是我的 html 底部的 JS 库:
<!-- webapp manifast library -->
<script async src="https://cdn.jsdelivr.net/npm/pwacompat@2.0.6/pwacompat.min.js" integrity="sha384-GOaSLecPIMCJksN83HLuYf9FToOiQ2Df0+0ntv7ey8zjUHESXhthwvq9hXAZTifA" crossorigin="anonymous">
</script>
同样,我将此页面添加到主屏幕,但什么也没有。
没有全屏,没有不同的窗口,只有Safari。
我是否误解了 PWA 的基本原理?
【问题讨论】:
-
您是否使用 Chrome Lighthouse 工具测试了您的 HTTPS 站点,并且没有出现任何错误? (这是一个有效的 PWA)
-
我的网站是 https,以及我在问题中提到的所有其他应该是 PWA 的网站。 (优步、推特等)。似乎我的 iPhone 只是不想支持它。 (iPhone 8+ 和 iOS 12+)
-
您可以在此处找到有关 Safari 对 PWA 的支持的一些信息:medium.com/@firt/…
标签: javascript html web-applications progressive-web-apps