2016-06-16 38 views
2

我有下一个问题,我必须添加NSAppTransportSecurity密钥到我的info.plist文件。Phonegap修改config.xml为NSAppTransportSecurity

因为我有很多不同的config.xml用于测试,开发和生产服务器,所以手动将NSAppTransportSecurity密钥添加到plist并不好。

这可以在config.xml本身内完成吗?

我已经试过这样:

<manifest device="ios" tag="plist/dict"> 
    <key>CFBundleURLTypes</key> 
    <array> 
     <dict> 
     ... 
     </dict> 
    </array> 

    <!--Here is my own:--> 
    <key>NSAppTransportSecurity</key> 
    <dict> 
     <key>NSAllowsArbitraryLoads</key> 
     <true/> 
    </dict> 
</manifest> 

但经过科尔多瓦打造的iOS我得到这个在我的info.plist:

<key>[object Object]</key> 
<string>NSAppTransportSecurity</string> 

但CFBundleURLTypes得到正常移植。我究竟做错了什么?

+0

只是增加平台的ios –

+0

然后使用默认的info.plist文件进行访问 –

回答

1

可以使用cordova-custom-config插件来实现这一目标:

$ cordova plugin add cordova-custom-config 

然后添加到config.xml文件:

<platform name="ios"> 
    <config-file platform="ios" target="*-Info.plist" parent="NSAppTransportSecurity"> 
     <dict> 
      <key>NSAllowsArbitraryLoads</key> 
      <true/> 
     </dict> 
    </config-file> 
</platform> 
1

我与DaveAlden的解决方案达成一致。但是,如果NSAppTransportSecurity是你有兴趣在*-Info.plist文件操作的唯一的事情,那么你可以使用cordova-ios-security plugin

这个插件需要您手动在做*-Info.plist文件的作业的护理