Ph0en1x3College Instructor
Abstract - With Apple producing millions of units annually, it might make good business sense to become an Apple Certified Development center. The iPhone, iPad, and iPod consistently use the same SDK and development methodologies and this process allows a business to economize the application development.  But as we discovered there is a bit more to it...

I.      Introduction

The iPhone Developer Configuration can be considered an intimidating task compared to other SDK’s. A developer has to meet all the requirements to get accepted into the program even before creating a single line of code. To help assist with the process, this whitepaper provides information on the process.

I expected the iPod to be similar to other hand-held devices which involve downloading the SDK, click the IDE here for a simulator execution or click here to download the compiled application to the device. Any clear expectation was quickly extinguished when I discovered that my IE browser was not compatible with www.apple.com/developer, and the web site does not respond to mouse clicks. When dealing with Apple and their requirements, time is not of the essence in responding.  

II.      How

Step one, sign up with the iPhone Dev Center, on a MAC laptop, navigate to the iPhone Dev Center on Apple's portal page. This is where you can download the SDK and find tutorial videos and documentation to help ease the learning curve. The instructions say to click through some legal forms then download the SDK and you can start running simulator applications.  

Since the laptop had an older version of the SDK I downloaded the latest SDK and then I had to make some changes to an existing simulator project profile to get it running again.


Open Xcode application and select the project you wish to open. Because we downloaded a new version of the OS, a base “Base SDK not found” message in the Active Target drop down list.  


In the open project, double click on the project name to get a popup menu for your project information.


In the General tab, click on project format and select the format for which you want compatibility. I selected Xcode 3.2 – compatible


In the Base SDK section, select the iOS that you are upgrading to, in this case, version 4.2.


In In the Build tab, change the Base SDK to your iOS.


Review the other options to make sure there are no other references listed to the old iOS..


Click on Rebuild Code Sense Index (in the general tab) to rebuild your project configurations.


Close the Project Info window.


Verify that the “Base SDK not found” message is not displayed.  If it is still displayed, go to Build -> Clean to rebuild all project files.


Select the Simulator target, and build the application.

Now that you can have the SDK and can run the simulation, and you should have everything you need to load the application on to the hardware, right?   Not so fast…  

The simulator target is called a simulator for a good reason; it is not an adequate development platform.  The simulator target does not really emulate hardware, so you will have to meet Apple’s requirements for loading the code on to an actual device.

Step two, enroll in the iPhone Developer Program; although I signed up and clicked through the options on Apple’s website AND downloaded the SDK, I can't actually install any software on the iPod hardware. I can read documentation, write code, compile it, and even run it in the iPhone simulator, but I have more work to do to get it on to my actual hardware.

I started down a path of trying to register myself as a professional developer, and get the company registered. I provide Apple with the information they have requested, and I expect to get an immediate approval. It becomes a waiting game  and my co-worker indicated he had an  existing (administrator) account, so I start using his account /certificate. The decision was correct because Apple’s response was to request more information on the company’s charter and other information which my immediate chain of command did not want to deal with.

While using the (borrowed) Administrator account I noticed an option to invite a developer to the group. I entered my own email address and waited for a response from Apple. After 2 weeks, I received the link and I enrolled as an Apple developer. I continue to use the administrator account so I do not have to have multiple accounts signed on, one as administrator to approve development requests and one account to do the work.    

Step three, provisioning is needed as the iPod won’t take any software that hasn’t been signed by Apple. Provisioning will allow a third-party developer to sign the software so it can be downloaded onto the hardware. To create a provisioning profile, a developer must provide Apple with the devices unique identifier then download the cryptographic string of information that will tell the device to accept applications that you have “signed”.    

Under the developer’s iOS development website, go to the provisioning portal. Find the link for the Provisioning Assistant and click.   Create new App ID description, and click through the screens. This will generate a Provision profile which needs to be downloaded and installed via the Organizer window. Once the Provisioning Profile has been dragged to the Organizer’s hardware window, you should verify that it is listed.

The App ID description also needs to be inserted into the project’s .plist file under “Bundle Name”. It is not clear why the names are not standardized between the provisioning certificate creation and the project profile name but it won’t work unless it is correct.

Step four, in the project profile under the build tab, update the code signing that matches your Apple developer certificate and the provisioning certificate. If you have not previously installed the developer certificate, you need to open the Keychain Access drag and drop your Apple developer certificate into Keychain Access window.  

With a successful provisioning and installation of the certificate, the iPod application should build and install on the hardware. If the project starts reporting bizarre errors you might have to clean the project and rebuild or run the keychain first aid to recover from a corrupted file.
Ph0en1x3College Instructor

Comments (0)

Have a question about something in this article? You can receive help directly from the article author. Sign up for a free trial to get started.