title: Tools for Apache Cordova (VS2015): Adding custom entries to *info.plist for iOS
body: <p>I am using Tools for Apache Cordova  on VS2015 to develop a project and I need to set some additional options in the *info.plist file in order to temporarily unblock HTTP web access (NsAppTransportSecurity) as well as enabling geolocation services to run in the background.</p>
  
  <p>Basically, I need to add the following...</p>
  
  <pre><code>&lt;key&gt;UIBackgroundModes&lt;/key&gt;
  &lt;array&gt;
      &lt;string&gt;location&lt;/string&gt;
  &lt;/array&gt;
  &lt;key&gt;NSLocationAlwaysUsageDescription&lt;/key&gt;
  &lt;string&gt;Location services are required.&lt;/string&gt;
  &lt;key&gt;NSAppTransportSecurity&lt;/key&gt;
  &lt;dict&gt;
      &lt;key&gt;NSAllowsArbitraryLoads&lt;/key&gt;
      &lt;true/&gt;
  &lt;/dict&gt;
  </code></pre>
  
  <p>According to my understanding of the Microsoft documentation <a href="https://msdn.microsoft.com/en-us/library/dn757053.aspx#NativeConfig" rel="nofollow noreferrer">here</a>, also referenced by the SO question <a href="https://stackoverflow.com/questions/28320904/patching-manifest-plist-to-build-with-different-platform-specific-settings">here</a>, Tools for Apache Cordova allows you to add a *info.plist file to the /res/native/ios folder to be used in place of any generated file. I cannot however get this to work.</p>
  
  <p>The documentation above is (in my opinion) a little confusing as to the naming of the file...</p>
  
  <blockquote>
    <p>Place a custom Info.plist file in the res/native/ios/config.xml
    display name folder to override settings like splashscreens or icons.
    The Info.plist filename must be renamed as follows: config.xml display
    name-Info.plist to update iOS framework keys.</p>
  </blockquote>
  
  <p>This is where I think I may be going wrong; I simply cannot work out what the name of the file should be.</p>
  
  <p>Given a project "display name" of "My project" (as specified on the "Common Tab", "Display Name" when viewing the config.xml in the designer), I would assume the file name to have been "My project-Info.plist" or possibly "config.xml My project-Info.plist". I am also not sure if I should be creating another sub folder to contain the file...</p>
  
  <blockquote>
    <p>Place a custom Info.plist file in the res/native/ios/config.xml
    display name folder</p>
  </blockquote>
  
  <p>However whichever of these file names that I use if I then open the project in Xcode after it has been built (the remotebuild/taco subsystems leave a copy of the project in the ~/.taco_home/remote-builds/taco-remote/builds/nnn/cordovaApp/platforms/ios/My Project" folder until you close the remotebuild server), and look at the plist that has been submitted with the build my settings are not present.</p>
  
  <p>I have also found that there is a "My project-Info.plist" in the "Platforms/ios/My Project" folder but if I make changes to this copy of the file again they do not filter through to the Mac for building.</p>
  
  <p>Can anybody please verify the folder and filename that I am supposed to use. I know that the SO question that I referred to above was back in February and as such will have been referring to one of the preview builds and knowing that the format of the projects has changed between then and the RTM it may simply be that I am following out of date instruction.</p>
  
  <p>Thanks.</p>