if you have issues doing this, send me an email at info @ adeem.me to do this for you but then you have to donate me something
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 Naeem 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”
- Generating a Certificate Signing Request
- Submitting a Certificate Signing Request for Approval
Generating a Certificate Signing Request
- In your Applications folder, open the Utilities folder and launch Keychain Access.
- In the Preferences menu, set Online Certificate Status Protocol (OSCP) and Certificate Revocation List (CRL) to “Off”.
- Choose Keychain Access -> Certificate Assistant -> Request a Certificate from a Certificate Authority.
- 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.
- 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.
- No CA (Certificate Authority) Email Address is required. The ‘Required’ message will be removed after completing the following step.
- Select the ‘Saved to Disk’ radio button and if prompted, select ‘Let me specify key pair information’ and click ‘Continue’.
- 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’.
- The Certificate Assistant will create a CSR file on your desktop.
Submitting a Certificate Signing Request for Approval
- After creating a CSR, log in to the iPhone Developer Program Portal and navigate to ‘Certificates’ > ‘Development’ and click ‘Add Certificate’.
- 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.
- Upon submission, Team Admins will be notified via email of the certificate request.
- 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
- 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.
- 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:
- Log in to the iPhone Developer Program Portal and navigate to ‘App IDs’ and click ‘Add Id’.
- 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
- 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.
- In to the iPhone Developer Program Portal and navigate to ‘Provisioning’ > ‘Distribution’ and click ‘Add Profile’.
- Now select “App Store” in “Distribution Method”
- In “Profile Name” type your application name (i.e iphoneapp) which will be your provisioning profile name as well.
- In “App ID” select the app name (i.e iphoneapp) which you created in Step 2
- 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
- Select your project from “Group & File” in left side bar and click on “i” ( info ) button.
- Move to “Configuration” tab and select “Release”. Press the “Duplicate” button from bottom, name is “iphoneDistribution”.
- 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)
- 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”.
- 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.
- Repeat the step 3 and 4 again for safe side.
- Now Info screen is still open clicked on “Properties” tab and in Identifier field type the “App Id” (i.e com.adeem.iphoneapp)
- Everything is set up, click on “Build”(cmd+B) from Xcode>Build
- 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.
- In your browser type https://itunesconnect.apple.com/ (this website is very slow over https) and login using your iphone developer account.
- Click on “Manage Your Account” > “Add Application”
- 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.
Popularity: 28% [?]



hi adeem,
How can i pick a price for the iphone application. Does it need any approval from Apple after submitting my application?
No you can pick up any price you want but remember apple reject one application which cost 999$ and do nothing. Other then that, you can pick up any price you want and you have to provide it while submitting your application. Once your application is approved, you can change the price of your application later as well.
thank you for the reply.
hi,
Is it necessary to register our iphone, to install the application from itunes?
Is there any other place, from where we can install the application without registering the device?
@Rethish,
I didnt understand your question, can you please explain little more.
BTW you can install any application on your iphone ( or even jail-break iphone) form app store. You just need to have one app store account!
You mean you want to install a build on jail-break iPhone?
Is there any registration (standard program/ enterprise program ) required for the iphone(device), from the iphone developer program portal to install the application from appstore?
To install application from appstore, you dont need any thing! you dont have to apply for developer program to download applications from appstore.
If you want to create your own applications for that you need a registration ( standard program/ enterprise program)
thank you
adeem … appstore distribution needs.. dist.plist wich disallow gettaskallow to false…
mean shud we need a dist.plist in entitlements…
thanks in adv..
When I submit my files, i make a new Copy of Release and then I delete Entitlements.plist form my project because AppStore distribution don’t need that!
Please let me know if i dont understand your question!
so basically to submit apps to appstore.. first we need to become iphone dev program.. which is we need to pay $99 a year rite ?
no other way of doing that ??
coz to install program to -unjailbreaked- iphone we need appstore rite.
@Davin,
yep you need to pay 99$ ( or 299$ I guess) to submit your apps to apple store. This license is for one year also.
If you want to save that money then you have to go for jail-break application! but in that case there are not million of users who will buy your application….
After following all of your directions I’m getting this error message after running Build and loading to device:
Your mobile device has encountered an unexpected error (0xE800003A)
ApplicationVerificationFailed
Can you advise?
@ken,
it seems like your provisioning profile is not right( did you add the right UuID for your iphone?). Also trying removing all the profiles form your iPhone and add them through organizer( which is in Xcode>Windows>Organizer ^+Cmd+O)
Please also restart your iPhone. If you still find some issues, please tell me little details how you make your provisioning profile and how you place it on your Xcode and iPhone.
Thanks for this Adeem – comprehensive list for any aspiring iphone developer to add to their library – cheers
@Sean,
Thanks for liking check out few other post as well.
When I try to create the csr, after folowing these steps exactly, i am given:
Unknown Error = 100028
At this point, Certificate Assistant becomes unresponsive and needs a force-quit.
Suggestions?
Ok What I can do for you is, once i go back to my home. I will add a movie or picture sequence, So that you are more clear what i am doing.
hi adeem,
i have a problem, after downloading the new provisioning under /YourUserName/Library/MobileDevice/Provisioning Profile, in step 4.4, i cannot find the provisioning i saved before.
any clue?
thx, ronald
Check your email, i sent you a picture where should you place your Provisioning profile.
@Ronald reply to me:
yes, i have put it under my username. and there is no “MobileDevice” folder under the MacintoshHD.
then at the “code signing identity”, there are another previous provisioning on the list, but cant found the new created one.
-ronald
@Ronald,
After placing your provisioning profile, did you restart the Xcode?
btw an other tip, why not you drag that provisioning profile to your xcode (in your Dock) and then restart your Xcode. I think this should work for you!
@Ronald reply:
i havent restart the xcode.
btw the provisioning has showed after i restart.
Hi, thanks for the post. I am still having the same problem though: “The binary you uploaded was invalid. The signature was invalid, or it was not signed with an Apple submission certificate”
Please help.
@Joanthan,
What I can do for you is to upload a screen cast for this tutorial, hopfully that will solve the issues.
Can you tell me what are u doing while creating certificate? Are you creating distribution certificate, also while creating distribution proviosioning profile you should select app store! …
I appreciate your quick reply! When I create my APP ID, it ads some numbers and letters before it. (i.e. – I type incom.joncro.sportstrivia and it says my ID is EKAFA183A.com.joncro.sportstrivia)
When I download a certificate I double click it and press OK. Does that mean its installed?
Also, I am selecting app store when creating the files. And yes, I am creating a distribution certificate.
@Jonathan,
Can you Please send me your IM, where we can chat ? I guess i need to ask few questions before i can answer you very well!
AIM = crowed20
Hi,
I have done the signing of my application for Ad-Hoc distribution, and the application was also installed on iPhone device successfully. Now I want to upload the application on app store, therefore what I need to do differently in application signing as compared to ad-hoc signing. Please clarify me.
One more this, how long does it get for apple to approve your application request the finally make it available for publicly download.
Regards,
Pankaj
@Pankaj
Step 2 and 3 are different then Ad-hoc build. Other then you have to have distribution certificate and distribution provisioning profile. When you complied the build it wont install on your device bcoz its for apple store.
Apple takes around 3 days to 10 days for paid application and for 5 days to 1 month for free application. Its what my experience after submitting many applications to apple store.
So if I do not have an iPod or IPod Touch I cannot submit an app because I have not created a provisioning profile? Can anyone verify this?
Thanks!
@Steve,
You do not need to have iphone or ipod, you still can submit the application to apple store. But to submit application to apple store you need to have iphone developer license from apple (which cost 99$ or 299$).
I advise you to test your application on iphone or ipod before submitting it to apple store. Please let me know if you have more questions.
You mentioned the pixel size of the icon and other images required.
you did not metion if they need to be in a specific format…
what format does the icon need to be ? .ai, .psd etc…
and can the app images be JPEGs?
@kapil
you should add icon.png(any name but format should be png and 57×57 pixel) in your resources folder and add that name to your info.plist as well.
Also when you have to submit your application you have the same image like icon.png but in 512×512 pixel ( i guess good to be jpeg)
Other images which you have to submit can be 320×460 ot 320×480 pixel and format will be jpeg.
What about if i want to submit landscape images… they cannot be 320×480, or 320 x460?
Can i submit the portrait and landscape images together.?
Appreciate the information you sent./
It will great if you can make us aware of stuff like.. once you submit the app to Apple.. what all you can change later on, and what is fixed..?
Kapil
Can you edit your Application’s name ,, images..and etc after you have submitted the application to Itunes connect
@Kapil
can you look at dcard application on itunes to see different style of images you can submit. Its really good you a better idea.
You can not change the version number after submit the application. Also you can not change the name of application. You can change the images, text and other stuff.
once i have sumitted the application and i want my users to tap a button on my website and take them directly to the iTunes description page on their PC..
How do i get the URL for linking my app in the iTunes app store?
Does apple gives us the link for that?
Thanks,
Kapil
@kapil
Once your application appear on iTunes, simply right click on the image of your application and select “copy URL”. Paste this url on your website. Its really simple
when i need to go and click the “i” and type code signing and use the one i made i try to but it says “profile doesnt match any vailid certificate…” please help and email me at adogownsyou@gmail.com
@Adam,
The issue is with your certificate. Please make sure you have the right certificate in your keychain access. Today I get the same error, while helping someone. The main issue with this, you didnt make the certificate right!
when i upload the binary it says “The binary you uploaded was invalid. The signature was invalid, or it was not signed with an Apple submission certificate.” please help me and email me at adogownsyou@gmail.com THANKS SO MUCH!!
@Adam,
When you create a certificate request from your keychain, Please note the email and the name you provide should be match with the name and email you gave while registering yourself on apple developer portal.
One more thing to remember that when you were creating certificate you should not provide the last information, which is email. Because in 1st field you already gave the email.
Hi Adeem,
Can you please tell me what is the procedure to update version in Apple store? My app mainly depends on Sqlite DB, can i only update sqlite file or i need to update complete application?
- AKS
U have to change the version number from your info.plist file and then change the sqlite db. After that make a build and submit it to Apple for update.
Hi Adeem,
Thanks for your information.
1. Can i distribute free updates to my existing customers, if my app price is $1 ?
2. If user reinstall update app, will previous app overwrite or user need to uninstall then install new version of app.
- AKS
THANK YOU SO MUCH!
I had to repeat the certificate process for “production” certificate because in step 3 they ask you for a cert. for production
In step 3, point 5, the path is
/YourUserName/Library/MobileDevice/Provisioning Profiles
and not
/YourUserName/Library/MobileDevice/Provisioning Profile
@Nacho
Thanks for the correction