在 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
我使用 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