23
votes

Since upgrading to Xcode 4.3.x, my archives of iOS app in Organizer don't have an icon. (I have icons on my Mac OS X apps though)

One app in particular is an iPad app for which i provided 2 icons (normal + retina sizes) but still, I don't get an icon for it in my archives.

xcode-select -print-path returns /Applications/Xcode.app/Contents/Developer (which I believe is the right setting as I want to have xcodebuild and xcron available in the terminal)

EDIT :

After investigation, I've found out that as of Xcode4.3.2, archives are using the first item of the CFBundleIconFiles embedded inside the iOS5 CFBundleIcons property to display, but it won't work if you keep a .png extension to your file.

1/ About what Apple's documentation says:

When specifying icon files using the CFBundleIcons key, it is best to omit the filename extensions of your image files. If you include a filename extension, you must explicitly add the names of all image files (including any high-resolution variants). When you omit the filename extension, the system automatically detects high-resolution variants of your file, even if they are not included in the array.

Given that you don't want to have file extensions to your icon files (cf. above), mentioning "ipad" only in your .plist when your archive actually contains "ipad" and "ipad@2x" won't work. I had to mention both in the .plist for the retina version to be actually used on a Retina device.

BUT icons without .png extensions won't validate when you try to submit on the App Store. I'm fxxxed. Icons are making my life a nightmare right now.

2/ About TestFlight support of icons:

TestFlight doesn't seem to support icon files without extension as I can't see my icons on this service now that I removed my files .png extension

6
i know that "met too" comments aren't appreciated much but this is a big deal.. in our company, every new XCode has this problem. And it affects older archives too (which were displayed correctly in 4.2). The upload to the App Store works and apps work as expected. It really is just a display issue.. but in previous versions no icon meant that the build process was wrong so this is a but frightening - Martin Ullrich
i'm not sure you should be worried about a possible build problem. Although i don't have images on Organizer, the archives passed Apple validations and were successfully submitted to the App Store. - Dirty Henry
Yes it works for me too.. but previously this happened when you misconfigured build settings (like "skip install: no" on libraries) which resulted in f*ed up directory structures inside the .xcarchive - Martin Ullrich
Thanks for the comments confirming that the images do go to the app store. I was a bit scared. - Danyal Aytekin
That point about the file extension means that you should omit the file extensions when listing icon variants in your Info.plist, not that you should remove the file extensions from the actual files. So for example, if your bundle contains Icon.png and [email protected], your Info.plist should contain Icon (not Icon.png) in the CFBundleIconFiles array. - Simon Whitaker

6 Answers

42
votes

I had the exact same problem. Intrigued by your statement about xcode-select I first tried:

xcode-select -print-path

Which resulted in:

/Developer

Which is obviously wrong. So I first closed Xcode and then:

sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

After I restarted XCode all the icons were back in the Organiser.

So thank you for pointing me in the right direction! But I realize it is probably not the solution for you. Hopefully others may benefit!

3
votes

Add iTunesArtwork in your info.plist's CFBundleIconFiles.

1
votes

In your projects build phases turning off image compression solved this for me (it's either image or png compression, not at my computer to check) now this is a very strange situation because I haven't changed the way I format my images sense upgrading to 4.3 but during the app validation process I received an error telling me that my Icon.png wasn't 57x57 when it clearly was. I looked up how to solve this and turning off image compression was the fix... Which apparently made the icon show up in organizer too.... Weird.

Good luck!

0
votes

Check if the name of icon file is "Icon.png" .... not "icon.png" Not "ICON.PNG" not "icon.Png"

0
votes

You may be mistaken on icon file name. Check if the name of icon file is "Icon.png" .... not "icon.png" Not "ICON.PNG" not "icon.Png". In my case it was "icon.png" I changed it to "Icon.png" and the problem got resolved.

0
votes

I don't get it. However I'm running OS 10.8.2 and Xcode 4.5.2. At one point my app icon was working and somewhere along the way it vanished. I tried restarting, deleting derived data and nuthin.

However I tried:

  1. Copying the icon.iconset folder to my desktop.
  2. Deleting icon.iconset folder from Xcode
  3. Dragging the folder back into Xcode (copy files/folders enabled)
  4. Rebuild and voila! It showed up.

Magic I guess...