为什么电话:*链接不适用于ios?

时间:2016-07-11 15:00:55

标签: ios cordova cordova-plugins

我将此添加到config.xml

<access origin="*"/>
<access origin="tel:*" launch-external="yes"/>
<access origin="mailto:*" launch-external="yes"/>
<allow-intent href="*"/>
<allow-navigation href="*"/>
<allow-navigation href="tel:*"/>
<allow-navigation href="mailto:*"/>
<allow-navigation href="data:*"/>
<plugin name="cordova-plugin-whitelist" version="1" />

这是index.html:

<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">

当我点击这样的链接时:<a href="tel:+1234567">Call!</a> ios上没有任何反应(在Android上运行良好)。

如果我将config.xml更改为:

<access origin="//*"/>
<access origin="tel:*" launch-external="yes"/>
<access origin="mailto:*" launch-external="yes"/>
<allow-intent href="//*"/>
<allow-navigation href="//*"/>
<allow-navigation href="tel:*"/>
<allow-navigation href="mailto:*"/>
<allow-navigation href="data:*"/>
<plugin name="cordova-plugin-whitelist" version="1" />

它调用,但ajax请求服务器停止工作。

1 个答案:

答案 0 :(得分:2)

只需删除允许导航

<allow-navigation href="tel:*"/>
<allow-navigation href="mailto:*"/>

我不知道为什么,但它有效!

cordova-ios @ 4 + wkwebview将首先获取导航过滤器以回复网址,不执行任何操作 !!

https://github.com/apache/cordova-plugin-wkwebview-engine/pull/20