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 cloud-based build system. 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.

A special intelxdk.config.ios.xml file is automatically generated based on input you provide on the Projects tab. 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 user interface (UI).

The build options described below 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, to either supplement or replace those options that are automatically generated by the Intel XDK UI.

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.

Some versions of the Intel XDK only provide the means to add Launch icons to your iOS app on the Projects tab. To include Settings 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 (note that the code shown below can be used to specify all app, settings and spotlight icons needed for iOS 6.x and later devices (through the iPhone 6+), as an alternative to using the Intel XDK icon and splash screen GUI):

<!-- iOS icons and splash screens -->
<!-- Spotlight Icon -->
    <icon platform="ios" src="pkg/ios/icon-40.png" width="40" height="40" />
    <icon platform="ios" src="pkg/ios/icon-40@2x.png" width="80" height="80" />
    <icon platform="ios" src="pkg/ios/icon-40@3x.png" width="120" height="120" />
<!-- iPhone / iPod Touch -->
    <icon platform="ios" src="pkg/ios/icon.png" width="57" height="57" />
    <icon platform="ios" src="pkg/ios/icon@2x.png" width="114" height="114" />
    <icon platform="ios" src="pkg/ios/icon-60.png" width="60" height="60" />
    <icon platform="ios" src="pkg/ios/icon-60@2x.png" width="120" height="120" />
    <icon platform="ios" src="pkg/ios/icon-60@3x.png" width="180" height="180" />
<!-- iPad -->
    <icon platform="ios" src="pkg/ios/icon-72.png" width="72" height="72" />
    <icon platform="ios" src="pkg/ios/icon-72@2x.png" width="144" height="144" />
    <icon platform="ios" src="pkg/ios/icon-76.png" width="76" height="76" />
    <icon platform="ios" src="pkg/ios/icon-76@2x.png" width="152" height="152" />
<!-- iPhone Spotlight and Settings Icon -->
    <icon platform="ios" src="pkg/ios/icon-small.png" width="29" height="29" />
    <icon platform="ios" src="pkg/ios/icon-small@2x.png" width="58" height="58" />
    <icon platform="ios" src="pkg/ios/icon-small@3x.png" width="87" height="87" />
<!-- iPad Spotlight and Settings Icon -->
    <icon platform="ios" src="pkg/ios/icon-50.png" width="50" height="50" />
    <icon platform="ios" src="pkg/ios/icon-50@2x.png" width="100" height="100" />
Your icon image files must be located within the source directory of your project directory. The icon file and directory names are relative to your project's "source directory" (usually named www). In the example above, assuming the "source directory" is named www, the icons are located in the <project-root>/www/pkg/ios directory. We strongly advise against using unusual characters and spaces in the names of your project file 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 1536
iPad Portrait Retina 1536 2048
iPad 2 and iPad Mini Landscape 1024 768
iPad 2 and iPad Mini Portrait 768 1024
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

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.
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).
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.
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.
For more complete information about compiler optimizations, see our Optimization Notice.