Eigo Logo Follow us on Twitter

Targeting iOS4 and SDK 3.2

 
Jared Wiltshire 16th July 2010

IntroiPhone SDK Logo

This article will help you understand the iOS4 SDK upgrade and what is available to you as a heads up before you download to avoid any shock.

There is no 3.2 iPhone Simulator available, however there are the 4.0 iPhone Sim is available with iOS4 running and also the 3.2 iPad simulator is available with iOS3.2 running (iOS4 currently not available for iPad).

If you target iPhone only and run it on iPad sim it will act as an iPhone app and allow the zoom functionality within the simulator to stretch the size of the app to fit an iPad screen (1024x768)

If you target iPhone/iPad and run it on an iPad sim it will act as an iPad application- in this instance you should also provide a larger icon for the iPad (72x72)

Apps that were designed for iPhone 3.2 SDK will likely still run on the 4.0 operating system, please see this extensive list of changes to the API from 3.2 to 4.0:

iPhone 4.0 API differences

If any of your code uses any of the classes or methods that have been removed (do a search for any that you are concerned about on this page) then you might need to re-write certain areas of code.

However, Apple have recommended that you test your code on each OS that has ever been released (equal to and higher than the target OS) and on each iPhone device, to be fully compliant. The simulator is not a good enough tool to test your iPhone code on alone and does not properly represent how your code will run on the actual device.
Further more, Apple have restricted Operating System installs so that you cannot rollback to a previous version of your OS.

Selecting a project target OS and SDK

Within XCode, pull up the project settings by navigating to the Project menu and then selecting 'Edit Project Settings'.

Select the Build tab at the top of this window, you will see something similar to this:

XCode Project Settings - Base SDK


The base SDK is the version of the iPhone SDK you wish to use. The features available here may be available in older version but may be deprecated from future versions. Ideally you want to be picking the lowest SDK available that all of your features of the app are available in.

The target OS is the intended target OS for the application – you should think of this as the highest target device that the app could run on, so it's a good idea to pick the highest OS version.

If you have any further comments, please feel free to leave a message underneath.