Overcoming Trouble Validating Your iPhone App


You are all excited because you finished developing your iPhone App and you have performed the necessary steps in the iOS Dev Center and in iTunes Connect. You have clicked on Product > Archive in Xcode 4 and are ready to upload it.

You click the Validate button and login. It says:
"No identities are available for signing"
You click Download Identities and login again. You get your hopes up only to have them dashed because now it says:
"No identities were available
"An administrator must request identities before they can be downloaded."  
Say what?

Well, in a nutshell, the Bundle identifier in your Xcode project doesn't match the Bundle ID you registered online.

Here is how to fix it:
  1. Login to iTunes Connect.
  2. Click "Manage Your Applications"
  3. Click on your app.
  4. Click "More", and choose "About This App".
  5. Copy the Bundle ID.
  6. Go to your project in Xcode 4.
  7. Click the folder at the top left, under the Run button.
  8. Click the node at the very top of the list of folders.
  9. In the next column to the right, under "Targets" click the Target name.
  10. Click on the "Info" tab.
  11. Expand "Custom iOS Target Properties".
  12. Paste the Bundle ID into the "Bundle identifier" field.
  13. Press ENTER, or click off of that field to another one in order to make sure it recognizes the change.
  14. Click Product > Archive to archive your app again.
  15. This time when you click "Validate" it should work.
If you get the error of "Packaging Operation Failed" when trying to Validate, then it could be multiple issues, but try these to see if they help:
  1. Check your Scheme (thanks to the response from Arkanis on StackOverflow):
    1. In XCode, click Product > Edit Scheme
    2. Click "Archive" on the bottom left.
    3. On the Info tab, make sure the Build Configuration is set to "Release".
    4. Click OK.
  2. Check your Code Signing settings (thanks to the response from Nick on StackOverflow):
    1. Click the Project name and click the Build Settings.
    2. In the search box, type "Code Signing Identity".
    3. Make sure the Release options are set to use a Distribution profile.
    4. Now click on the Target name and do the same things as the previous steps.
  3. Now, click Product > Archive and try the Validate button again.
If you get the error of "No suitable application records were found", then make sure:
  1. You have created an application in iTunes Connect.
  2. Your application in iTunes Connect must be on the "Waiting for Upload" status (as opposed to the "Prepare for Upload" status. (Thanks to the response from Maxwell on StackOvervow).
  3. Login to iTunes Connect, click Manage Your Apps, click your app, scroll down and click View Details. At the top right, click Ready to Upload Binary. Proceed from there.

Comments

Penguin said…
THANK YOU SOOOOO MUCH

You are totally awesome!
João said…
I love you with all my heart!

This post saved my day! Thanks a lot!
paines said…
Damn you "Bundle Identifier"!!!! Thanks mate !
Unknown said…
goodness, I was trying for 4 hours before I read this post. THANK YOU.
Anonymous said…
Thank you very much! Bundle IDs weren't matching up.
Unknown said…
I really want this to work but can not find my bundle ID on itunes connect.

I can find it in my xcode project.

need a little help
Anthony Tietjen said…
Ryan, login to iTunesConnect and click "My Apps".

Then click on your app, (assuming you have already created the entry for it here.)

There are some links for Version, Prerelease, etc. At the right of that list of links, click More, then choose About This App.

Your Bundle ID will be listed there.
Unknown said…
Thanks Anthony,

I found it.

I'm still stuck with the no identities were available.

I've made a new distribution file (with my beta testers in it) and a new code signing identity. Built a new archive and still when I go to Distribute in the Organizer I get

no identities were available

Tried downloading them and get the: Warning
An administrator must request identities before they can be downloaded.

This doesn't occur when I use the Save for Enterprise or Ad Hoc Deployment


Confused

Popular posts from this blog

Adobe® Flex® Combobox: Selecting an Item Without Using SelectedIndex

Parameters Sent by TinyWebDB in App Inventor for Android