【问题标题】:How do I remove the web address in a display:standalone IOS PWA?如何删除显示中的网址:独立 IOS PWA?
【发布时间】:2019-09-20 20:05:48
【问题描述】:

我正在尝试在 ios 上设置独立的 PWA,但网址仍然存在

我在index.html中加入了以下内容

<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="mobile-wep-app-capable" content="yes" />

并且有 包括

    "display": "standalone"

site.webmanifest

到我们服务器的连接是通过 https

是否需要包含任何其他清单项才能从显示中删除 url?

更新 - 19 年 5 月 14 日:

我相信 index.html 和配置都很好。我现在认为这是与路由有关的问题

当您将 PWA 添加到 IOS 的主屏幕时,它会将 PWA 的条目 URL 设置为您当前所在的页面。就我而言,当用户第一次进入应用程序时,他们位于www.sitename.co.uk/login 而不是页面的根目录 www.sitename.co.uk/

我在网上偶然发现 safari 的全屏 PWA 应用程序会在重定向到不同域后显示 URL 栏,以防止网络钓鱼/使重定向对用户一目了然。

我只能假设,当您添加 PWA 时,它会将 url 添加为某种“根”,当您尝试在根下导航时,它会将其标记为意外行为 并导致这种行为

/login -> No URL
/ -> URL
/edit/resource -> URL
/login/resource -> No URL

这很烦人,因为

a) 无论用户在哪个屏幕上添加应用,我都希望用户获得相同的 PWA 体验

b) 允许在没有 URL 的情况下查看 PWA 域上的所有路由会更有意义。

【问题讨论】:

  • 看起来不错,这可能是个愚蠢的问题,但您确定已包含清单吗?即&lt;link rel="manifest" href="manifest.json"&gt;
  • 您是否使用过 lighthouse 工具来确保您的 PWA 有效并且可以安装?什么版本的 iOS 和什么浏览器?
  • iOS 不支持清单文件。

标签: ios progressive-web-apps


【解决方案1】:

这可能有点晚了,但您可以尝试在清单中添加scope 属性。这样只要主机与scope中指定的主机相同,地址栏就不会显示在IOS上。

看看这个:https://developer.mozilla.org/en-US/docs/Web/Manifest/scope

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-21
    • 2011-12-11
    相关资源
    最近更新 更多