Cordova for Apple iOS Build Options

The Intel® XDK "Cordova for iOS" build system automatically generates special configuration files in your project source directory to direct the build process. The Cordova build option is based on the open source Apache* Cordova CLI build system. When you use the Cordova build option your application project files are submitted to the Intel XDK build server where a Cordova CLI system is hosted and maintained, there is no need to install the open source Cordova CLI system on your workstation.

NOTE: Starting with Intel XDK version 1199, the build configuration files are automatically generated based on input you provide on the Projects tab. A special intelxdk.config.ios.xml file is automatically generated. The options described below can be used inside an intelxdk.config.additions.xml file to exercise finer grained control over the Projects tab and to control features that are not handled by the Projects tab.

The following build options pertain only to iOS builds. They will not affect builds for other target platforms. You can include these options in your intelxdk.config.additions.xml file when submitting a build, in order to either supplement or replace those options that are automatically generated by the Intel XDK.

For detailed information regarding the structure and contents of the intelxdk.config.additions.xml file, please read Understanding the Intel XDK Cordova Build File Options topic.

iOS Launch, Settings and Spotlight Icon Specifications

If no launch icon files are provided with your project, the build system will provide defaults. You must provide all required launch icon formats before submitting your application to the Apple store. If you do not provide icons appropriate to your app it is likely that your application will be rejected by Apple.

Icon files must be provided in non-interlaced, 24-bit, PNG format. The height and width numbers in the table (below) are in pixels. See the "Icon and Image Sizes" section of this iOS Human Interface Guidelines article for details.

Target Width Height
iPad and iPad Mini (Retina) App Icon 152 152
iPad and iPad Mini App Icon 76 76
iPhone 6 Plus (Retina) App Icon 180 180
iPhone 4s, 5 and 6 (Retina) App Icon 120 120
iPhone App Icon 60 60
iPad and iPad Mini (Retina) Spotlight Icon 80 80
iPad and iPad Mini Spotlight Icon 40 40
iPhone 6 Plus (Retina) Spotlight Icon 120 120
iPhone 4s, 5 and 6 (Retina) Spotlight Icon 80 80
iPhone Spotlight Icon 40 40
iPad and iPad Mini (Retina) Settings Icon 58 58
iPad and iPad Mini Settings Icon 29 29
iPhone 6 Plus (Retina) Settings Icon 87 87
iPhone 4s, 5 and 6 (Retina) Settings Icon 58 58
iPhone Settings Icon 29 29

For more information regarding how Cordova handles iOS icons, please see the Cordova Icons and Splash Screens documentation. For the most accurate information related to iOS icons see the iOS Human Interface Guidelines and App Icons on iPad and iPhone.

The Intel XDK (version 1621) only provides the means to add Launch icons to your iOS app via the UI (user interface). To include Search and Spotlight icons as part of your app, you need to create an intelxdk.config.additions.xml file in the top level of your project directory and add the following lines to that file:

<!-- iPhone / iPod Touch  -->
     <icon platform="ios" src="res/ios/icon-60.png" width="60" height="60" />
     <icon platform="ios" src="res/ios/icon-60@2x.png" width="120" height="120" />
     <icon platform="ios" src="res/ios/icon-60@3x.png" width="180" height="180" />
 <!-- iPad -->
     <icon platform="ios" src="res/ios/icon-76.png" width="76" height="76" />
     <icon platform="ios" src="res/ios/icon-76@2x.png" width="152" height="152" />
 <!-- Spotlight Icon -->
      <icon platform="ios" src="res/ios/icon-40.png" width="40" height="40" />
      <icon platform="ios" src="res/ios/icon-40@2x.png" width="80" height="80" />
      <icon platform="ios" src="res/ios/icon-40@3x.png" width="120" height="120" />
<!-- iPhone / iPod Touch -->
      <icon platform="ios" src="res/ios/icon.png" width="57" height="57" />
      <icon platform="ios" src="res/ios/icon@2x.png" width="114" height="114" />
<!-- iPad -->
      <icon platform="ios" src="res/ios/icon-72.png" width="72" height="72" />
      <icon platform="ios" src="res/ios/icon-72@2x.png" width="144" height="144" />
<!-- iPhone Spotlight and Settings Icon -->
      <icon platform="ios" src="res/ios/icon-small.png" width="29" height="29" />
      <icon platform="ios" src="res/ios/icon-small@2x.png" width="58" height="58" />
      <icon platform="ios" src="res/ios/icon-small@3x.png" width="87" height="87" />
<!-- iPad Spotlight and Settings Icon -->
      <icon platform="ios" src="res/ios/icon-50.png" width="50" height="50" />
      <icon platform="ios" src="res/ios/icon-50@2x.png" width="100" height="100" />
NOTE: the icon image files must be located within your project directory. The icon file and directory names are relative to your project's "source directory" (usually named www). The directory and filenames shown in this example are for illustration; you can use other names for them. We strongly advise against using unusual characters and spaces in the names of your source directories and filenames.

iOS Splash Screen Image Specifications

Your application will display a splash screen during initialization. This is done to provide a "getting ready" indication while your app and the underlying device API infrastructure initializes. If no splash files are provided with your project, the build system will provide default images. It is highly recommended that you replace the default splash screen images with your own before submitting your application to a store. See the "Launch Images" section of this iOS Human Interface Guidelines article for details.

Splash screen images must be provided in non-interlaced, 24-bit, PNG format only! The height and width numbers in the table (below) are the required pixel sizes for the respective screens. A launch image should be provided for each support device with your application.

Target Width Height
iPad Landscape Retina 2048 1496
iPad Portrait Retina 1536 2008
iPad 2 and iPad Mini Landscape 1024 748
iPad 2 and iPad Mini Portrait 768 1004
iPhone 6 Plus Portrait 1242 2208
iPhone 6 Plus Landscape 2208 1242
iPhone 6 Portrait 750 1334
iPhone 6 Landscape 1334 750
iPhone 5 640 1136
iPhone 4s, iPhone Retina 640 960
iPhone 320 480

iOS Build Preferences

provisioning
Defines a provisioning profile that controls the package type created during the build. More than one provisioning profile can be defined; for example: "adhoc" and "production." Use the ios-configuration tag to specify which provision file will be used during the build. See these step-by-step instructions for details regarding how to create a provisioning file.
<intelxdk:provisioning intelxdk:src="<PATH>" intelxdk:type="<PROV>" />
<PATH> is the path to the provisioning profile, relative to the project SOURCE DIRECTORY on the Projects tab.
<PROV> is the provisioning profile scheme.
ios-configuration
Use this tag to indicate which provisioning profile should be used during the build. The <PROV> value should match a provisioning profile defined by one of the provisioning tags.
<preference name="ios-configuration" value="<PROV>" />
<PROV> is the provisioning profile scheme (see intelxdk:provisioning).
ios-target
Specifies which iOS operating system version to build for. Defaults to iOS version 7 if this setting is absent.
<preference name="ios-target" value="<OSVERSION>" />
<OSVERSION> indicates the iOS build version. Valid values are 5, 5.0, 5.1, 5.1.1, 6, 7, 7.0 and 7.1.
exit-on-suspend
Controls whether the application is terminated and purged from memory or moved to the background when it quits (the default action). See UIApplicationExitsOnSuspend for more information.
<preference name="exit-on-suspend" value="<EXIT>" />
<EXIT> equals "true" to terminate on suspend, "false" otherwise.
 
*Other names and brands may be claimed as the property of others.
For more complete information about compiler optimizations, see our Optimization Notice.