在 iOS 上,allow-navigation 并不优先于 allow-intent

allow-navigation isn't taking precedence over allow-intent on iOS

我使用 PWAbuilder 为我的 PWA 应用程序生成了 iOS 和 Android Pollyfill。它在 Android 上运行良好,但我 运行 在 iOS 上遇到了问题。

我想要外部 links 在外部浏览器中打开,所以我添加了这个 allow-intent:

<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />

这很好用,如果我点击任何外部 link(not-under-my-domain.com),它会在外部浏览器中打开.

为了在应用程序中打开 my-domain.com,我添加了

<allow-navigation hap-rule="yes" href="*://my-domain.com/*" />

根据文档,allow-navigation 应优先于 allow-intent,但它似乎不起作用。

然后,如果我在我的域中单击任何 link,例如 /other-page,它会在外部浏览器中打开 - 这不是预期的,它应该在应用程序中打开。

我想要在 allow-navigation 中未定义的任何 link 在外部浏览器中打开,以及所有其他(在 my-domain.com) 在应用程序中。

有什么想法吗?

所以看来问题出在我的 cordova 版本过时了。我根据@jcesarmobile 对评论的建议升级了 cordova 版本,现在可以使用了。

npm install cordova -g
cordova plugin save
cordova platform rm ios
cordova platform add ios