how to submit iphone application to apple store

It took me 3 days to submit my first application on Appstore, its not very complicated but you have to follow many steps to do it right. So today one of my friend  requested me to write down the steps for him.
I assume that you have iPhone Developer License. Please follow the following steps, one by one:

  • Step 1:

    Certificate is very important part for submitting or testing your application on iPhone. It has the code-sign(Signatures) which will be checked when you submit your application on apple store or to test it on your iPhone. (You can bypass those to install application on your jail-break iPhone or to submit it to Cydia but you will not be able to submit it to appstore. Check my previous post to bypass code signature).There are two steps to create a certificate from developer portal. I simply copied those two from “iPhone developer portal”


    1. Generating a Certificate Signing Request
    2. Submitting a Certificate Signing Request for Approval
    Generating a Certificate Signing Request


    1. In your Applications folder, open the Utilities folder and launch Keychain Access.
    2. In the Preferences menu, set Online Certificate Status Protocol (OSCP) and Certificate Revocation List (CRL) to “Off”.
    3. Choose Keychain Access -> Certificate Assistant -> Request a Certificate from a Certificate Authority.
    4. In the User Email Address field, enter your email address. Please ensure that the email address entered matches the information that was submitted when you registered as an iPhone Developer.
    5. In the Common Name field enter your name. Please ensure that the name entered matches the information that was submitted when you registered as an iPhone Developer.
    6. No CA (Certificate Authority) Email Address is required. The ‘Required’ message will be removed after completing the following step.
    7. Select the ‘Saved to Disk’ radio button and if prompted, select ‘Let me specify key pair information’ and click ‘Continue’.
    8. If ‘Let me specify key pair’ was selected, specify a file name and click ‘Save’. In the following screen select ‘2048 bits’ for the Key Size and ‘RSA’ for the Algorithm. Click ‘Continue’.
    9. The Certificate Assistant will create a CSR file on your desktop.
    Submitting a Certificate Signing Request for Approval


    1. After creating a CSR, log in to the iPhone Developer Program Portal and navigate to ‘Certificates’ > ‘Development’ and click ‘Add Certificate’.
    2. Click the ‘Choose file’ button, select your CSR and click ‘Submit’. If the Key Size was not set to 2048 bits during the CSR creation process, the Portal will reject the CSR.
    3. Upon submission, Team Admins will be notified via email of the certificate request.
    4. Once your CSR is approved or rejected by a Team Admin, you will be notified via email of the change in your certificate status.

    Download/Installing Certificate on your machine


    1. Upon CSR approval, Team Members and Team Admins can download their certificates via the ‘Certificates’ section of the Program Portal. Click ‘Download’ next to the certificate name to download your iPhone Development Certificate to your local machine.
    2. On your local machine, double-click the downloaded .cer file to launch Keychain Access and install your certificate.
    Certificate is installed on your MAC now the next step is create a App ID. (Note:You have to follow this step only once and later you don’t have to make certificates for your other applications.)


  • Step 2:

    Creating an App Id is very easy, you have to follow few simple steps:

    1. Log in to the iPhone Developer Program Portal and navigate to ‘App IDs’ and click ‘Add Id’.
    2. In “App Id Name” enter the name of your application (i.e iphoneapp) and in “App Id” enter something like com.yourdomain.applicationame (i.e com.adeem.iphoneapp) and clicked on Submit
    3. Please write done the “App Id” because you will used this in Info.plist, Bundle identifier tag


  • Step 3:

    Now the next step is to create a Provisioning File for your Xcode and this will be your last step for creating binary which you submit it to appstore.

    1. In to the iPhone Developer Program Portal and navigate to ‘Provisioning’ > ‘Distribution’ and click ‘Add Profile’.
    2. Now select “App Store” in “Distribution Method”
    3. In “Profile Name” type your application name (i.e iphoneapp) which will be your provisioning profile name as well.
    4. In “App ID” select the app name (i.e iphoneapp) which you created in Step 2
    5. Download the Provisioning profile and copy it to your /YourUserName/Library/MobileDevice/Provisioning Profile


  • Step 4:

    Now everything is step up, open your project in Xcode

    1. Select your project from “Group & File” in left side bar and click on “i” ( info ) button.
    2. Move to “Configuration” tab and select “Release”. Press the “Duplicate” button from bottom, name is “iphoneDistribution”.
    3. Click on “Build” tab and select “iphoneDistribution” and type in “Search in Build Settings” filed ‘Base SDK’ and select the current selected Device and change it to what device your application is targetting ( I prefer “Device – iPhone OS 2.0)
    4. Now in “Search in build setting” field type “code signing identity” and select the provisioning profile you created in Step 3. Also do the same thing for the child property “Any iPhone OS Device”.
    5. Now Close the Info screen and select the “Target” > “YourApp” from “Group & File” in left side bar and clicked on “Info” button again from Xcode.
    6. Repeat the step 3 and 4 again for safe side.
    7. Now Info screen is still open clicked on “Properties” tab and in Identifier field type the “App Id” (i.e com.adeem.iphoneapp)
    8. Everything is set up, click on “Build”(cmd+B) from Xcode>Build
    9. Now right click on “Product”>”YourApp” and select “Reveal in Finder”. This is your binary file so please zip this file.


  • Step 5:

    Now you are done from Xcode and iPhone Developer Protal. Now you will submit this binary to itunesconnect.

    1. In your browser type https://itunesconnect.apple.com/ (this website is very slow over https) and login using your iphone developer account.
    2. Click on “Manage Your Account” > “Add Application”
    3. Now answer simple question from apple and submit your application to appstore. Few thing you should have before you submit your application there in System/Mind:
      • Application Name ( must be uniqe)
      • Application description
      • Application Category
      • URL for your application feedback
      • Icon of your application in 512×512 size
      • Main picture of your application in 320×480 or 320×460 size. (Optionaly you can submit up to 4 more pictures of your application as well)


That’s all you need to do :) (Please post anything in comments that I missed and I will update the post) Not very long but it might take 2-3 hours!
Please feel free to ask any questions or problem you face during submitting your application to Apple Store.

No comments: