I ran into this same problem using xCode 5 - all the icons are there and appear correctly on the corresponding devices, but the validation fails. After some experimentation, I found that the following steps will resolve the common causes:
1) Ensure the correct filenames are used
The legacy icons need to follow a specific naming scheme (for apps supporting iOS 6.x and lower):
57 x 57 --> Icon.png (iPhone)
114 x 114 --> [email protected] (iPhone Retina)
72 x 72 --> Icon-72.png (iPad)
144 x 144 --> [email protected] (iPad Retina)
Note that iPad icons are called Icon-72
. Icon~iPad
, which worked in the past, doesn’t work any more (at least, not for me - it generates the same error that you reported).
The naming scheme for icons needed in iOS 7 and later is:
120 x 120 --> [email protected] (iPhone Retina)
76 x 76 --> Icon-76.png (iPad)
152 x 152 --> [email protected] (iPad Retina)
The easiest way to update the names is to click on them in the file browser in xCode and rename them directly there.
Source of filenames: https://developer.apple.com/library/ios/qa/qa1686/_index.html
2) Check that the Project file has detected all the icons
Click on your project file in xCode, and make sure the App Icons section has picked up each of the files. If not, manually select them. If you cannot select the icon file, it’s likely that the dimensions aren’t correct. You can check this by selecting the file in Finder, and pressing CMD-I to Get Information, and look at the dimensions under More Information.
3) Make sure that the plist has the right info
Click on your ProjectName-Info.plist
file, and check the array underCFBundleIcons~ipad/CFBundlePrimaryIcon/CFBundleIconFiles
. It should contain 4 entries: Icon-72
, Icon-72@2x
, and the names of your iOS7 icons. If there are any extra entries (e.g. for the old icon filenames), remove them by pressing the - button. If they stay there, validation will fail when it's unable to find the corresponding files.
After trying the above, you should be clear of the 3 common problems: incorrect filenames, missing files, and corrupted plist. Good luck!