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 App, 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 only! 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.

App (Home Screen) Icon Width Height
iPhone 6 Plus (Retina) 180 180
iPad Pro 167 167
iPad 2 and iPad Mini (Retina) 152 152
iPhone 4, 5 and 6 (Retina) 120 120
iPad 2 and iPad Mini 76 76
iPhone and iPod 60 60
iPad and iPad Mini (Retina) (iOS 6.1) 144 144
iPad and iPad Mini (iOS 6.1) 72 72
iPhone 4, 5 and 6 (Retina) (iOS 6.1) 114 114
iPhone and iPod (iOS 6.1) 57 57
Spotlight Search Icon Width Height
iPhone 6/6s Plus 180 180
iPhone 6/6s and iPad Pro 120 120
iPad 2 and iPad Mini (Retina) 80 80
iPhone 4s, 5 and 6 (Retina) 80 80
iPad 2 and iPad Mini 60 60
iPad (Retina) (iOS 6.1) 100 100
iPad (iOS 6.1) 50 50
iPhone (iOS 6.1) 40 40
Settings Icon Width Height
iPhone 6/6s Plus 87 87
iPad 2 and iPad Mini (Retina) 58 58
iPhone 4s, 5 and 6 (Retina) 58 58
iPhone, iPad 2 and iPad Mini 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 technique shown below can be used to specify any app, settings or spotlight icons needed for iOS 6.x and later devices, as an alternative to using the Intel XDK icon and splash screen GUI):

<!-- iOS icons and splash screens -->
<!-- Spotlight Icons -->
    <icon platform="ios" src="pkg/ios/icon-40.png" width="40" height="40" />
    <icon platform="ios" src="pkg/ios/icon-60.png" width="60" height="60" />
    <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" />
    <icon platform="ios" src="pkg/ios/icon-60@3x.png" width="180" height="180" />
<!-- Settings Icons -->
    <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" />
    <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" (usually named www) in your project directory. The icon file and directory names are relative to your project "source directory." In the example above, assuming your "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 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 Pro Landscape 2732 2048
iPad Pro Portrait 2048 2732
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

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