iOS PWA 独立:如何强制在新窗口中打开

Mr.*_*Web 5 safari mobile-safari ios progressive-web-apps

我在主屏幕上保存了一个 PWA,它在没有搜索栏和底部按钮(共享、标签等)的情况下正常打开。

所以每个链接都会在 PWA 中打开,这是意料之中的。

我在显示 pdf 时遇到问题,因为它们通常在 Safari 中使用“共享”按钮和所有底栏打开,但在 PWA 中,它们打开时没有底栏和任何共享按钮。

所以我的想法是http://www.mywebsite.com/download/pdf/12345在一个新的 safari 窗口中打开 PDF 链接 ( ),。

我尝试添加target="_blank"PDF 链接,但这并没有解决问题。

我还尝试通过在 safari 中打开应用程序来强制 iOS 行为,safari://http://www.mywebsite.com/download/pdf/12345但没有运气。

如何打开指向链接的新 Safari 窗口?

Mr.*_*Web 3

好的,唯一可行的解​​决方案是告诉 iOS 您要进入另一个域。

仅当您位于同一域中时,PWA 才会保留在您的应用程序框架中。要在外部窗口中打开域内的链接(或在 PWA 内但使用 Safari 标准控件),您必须将其发送到外部/不同的域。

因此,PWA 已打开https://www.mywebsite.com/,并且您想要打开带有所有 Safari 控制按钮的 PDF,您只需创建一个 SUB 域并将链接指向它,就像https://media.mywebsite.com/download/pdf/12345此时 PWA 认为您位于不同的域并执行正确的渲染!