我有一个Cordova应用程序(使用PGB构建),其中外部链接在iOS上停止工作。这些链接在Android和WebApp上运行良好,而不是iOS。我尝试了UIWebView和WkWebView。这曾经在所有平台上都能很好地工作。我不确定它什么时候坏了(Cordova 6或iOS 11)。我使用白名单插件:
<access origin="*"/>
<allow-navigation href="*" />
<allow-intent href="*" />
CORS标题是:
<meta http-equiv="Content-Security-Policy"
content="default-src 'self' gap://ready file://* *;
style-src * 'self' 'unsafe-inline' 'unsafe-eval';
script-src * 'self' 'unsafe-inline' 'unsafe-eval';"
>
链接都是外部的。我在应用WebView中不需要或不需要它们。我更喜欢Safari的单独实例。我还需要使用inappbrowser插件吗?
答案 0 :(得分:3)
allow-navigation
优先于allow-intent
,您必须删除allow-navigation
条目或将其更改为仅允许导航到某些网址,而不是全部。
答案 1 :(得分:0)
这对我有用!定义allow-navigation
允许嵌入会破坏外部链接,因此要解决此问题,我必须安装inAppBrowser插件https://github.com/apache/cordova-plugin-inappbrowser并使用js使用cordova.InAppBrowser.open(href, '_system');