0
votes

I'm using the cordova-plugin-whitelist (v 1.3.1) with my cordova app. I have a rule in my config.xml

<allow-intent href="tel:*"/>

I have code in my app that looks like this:

window.open('tel:2065551212');

If I build locally and deploy to the app store, the code works fine on both android and ios.

If I build using Adobe's Phonegap Build system, tel: links work ONLY on android and do NOT work on ios.

I've tried a number of different settings to no avail :(

I am on iOS 10.2 if that helps. But, I believe other versions of iOS are similarly affected.

I'd love some help!

Note, my full config.xml file is below:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<widget id="com.xxx.yyy" version="5.0.6" android-versionCode="6" ios-CFBundleVersion="5.0.6.6"
        xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
  <name>XXX</name>
  <description>Description...</description>
  <author email="[email protected]" href="http://www.example.org/">XXX Team</author>
  <content src="index.html"/>
  <access origin="*" launch-external="yes" />
  <allow-intent href="http://*/*"/>
  <allow-intent href="https://*/*"/>
  <allow-intent href="tel:*"/>
  <allow-intent href="sms:*"/>
  <allow-intent href="mailto:*"/>
  <allow-intent href="geo:*"/>
  <platform name="android">
    <allow-intent href="market:*"/>
  </platform>
  <platform name="ios">    
    <icon src="resources/ios/icon/icon.png" width="57" height="57"/>
    <icon src="resources/ios/icon/[email protected]" width="114" height="114"/>
    <icon src="resources/ios/icon/icon-40.png" width="40" height="40"/>
    <icon src="resources/ios/icon/[email protected]" width="80" height="80"/>
    <icon src="resources/ios/icon/[email protected]" width="120" height="120"/>
    <icon src="resources/ios/icon/icon-50.png" width="50" height="50"/>
    <icon src="resources/ios/icon/[email protected]" width="100" height="100"/>
    <icon src="resources/ios/icon/icon-60.png" width="60" height="60"/>
    <icon src="resources/ios/icon/[email protected]" width="120" height="120"/>
    <icon src="resources/ios/icon/[email protected]" width="180" height="180"/>
    <icon src="resources/ios/icon/icon-72.png" width="72" height="72"/>
    <icon src="resources/ios/icon/[email protected]" width="144" height="144"/>
    <icon src="resources/ios/icon/icon-76.png" width="76" height="76"/>
    <icon src="resources/ios/icon/[email protected]" width="152" height="152"/>
    <icon src="resources/ios/icon/[email protected]" width="167" height="167"/>
    <icon src="resources/ios/icon/icon-small.png" width="29" height="29"/>
    <icon src="resources/ios/icon/[email protected]" width="58" height="58"/>
    <icon src="resources/ios/icon/[email protected]" width="87" height="87"/>
    <splash src="resources/ios/splash/Default-568h@2x~iphone.png" width="640" height="1136"/>
    <splash src="resources/ios/splash/Default-667h.png" width="750" height="1334"/>
    <splash src="resources/ios/splash/Default-736h.png" width="1242" height="2208"/>
    <splash src="resources/ios/splash/Default-Landscape-736h.png" width="2208" height="1242"/>
    <splash src="resources/ios/splash/Default-Landscape@2x~ipad.png" width="2048" height="1536"/>
    <splash src="resources/ios/splash/Default-Landscape~ipad.png" width="1024" height="768"/>
    <splash src="resources/ios/splash/Default-Portrait@2x~ipad.png" width="1536" height="2048"/>
    <splash src="resources/ios/splash/Default-Portrait~ipad.png" width="768" height="1024"/>
    <splash src="resources/ios/splash/Default@2x~iphone.png" width="640" height="960"/>
    <splash src="resources/ios/splash/Default~iphone.png" width="320" height="480"/>
  </platform>
  <preference name="webviewbounce" value="false"/>
  <preference name="UIWebViewBounce" value="false"/>
  <preference name="DisallowOverscroll" value="true"/>
  <preference name="android-minSdkVersion" value="19"/>
  <preference name="BackupWebStorage" value="none"/>
  <preference name="SplashScreenDelay" value="0"/>
  <preference name="FadeSplashScreen" value="false"/>
  <preference name="FadeSplashScreenDuration" value="0"/>
  <preference name="SplashScreenBackgroundColor" value="0xFFFFFFFF"/>
  <feature name="StatusBar">
    <param name="ios-package" onload="true" value="CDVStatusBar"/>
  </feature>
  <plugin name="cordova-plugin-device" spec="~1.1.3"/>
  <plugin name="cordova-plugin-console" spec="~1.0.4"/>
  <plugin name="cordova-plugin-whitelist" spec="1.3.1"/>
  <plugin name="cordova-plugin-splashscreen" spec="~4.0.0"/>
  <plugin name="cordova-plugin-statusbar" spec="~2.2.0"/>
  <plugin name="ionic-plugin-keyboard" spec="~2.2.1"/>
  <plugin name="cordova-plugin-google-analytics" spec="~1.5.6"/>
  <plugin name="cordova-plugin-app-version" spec="~0.1.9" />
  <icon src="resources/ios/icon/[email protected]"/>
</widget>
1

1 Answers

0
votes

I got this working by adding the following preference to my config.xml file:

<preference name="phonegap-version" value="cli-6.4.0" />

This tells Phonegap Build to use cli-6.4.0 rather than its default (which is cli-6.3.0 as of January 19, 2017).

Note: The config file format I use appears to be correct for both versions of the cli. I would love insight into what is actually going on.