Where does the Xcode compilation and archive command search for its iTunes artworks?


I just found out about the Build and Archive option, and it looks very nice.

However, my application build with Build and Archive has a big question mark as its artwork in the Organizer window, instead of my nice iTunesArtwork file. I tried to have it in my project as PNG, JPG, with or without extension.

I probably missed something simple. Any idea? Where is the Build and Archive command looking for its iTunes artwork?

Thanks a lot.

Some time later spent experimenting, here is how "Build and Archive" cope with application icons, as far as I could see:

1- To have the icon show up in the organizer window, the icon must be listed in the application info.plist file in an CFBundleIconFiles entry. See Technical Q&A QA1686 for the details.

This is not really related to iTunesArtwork though.

2- To have iTunes show the application artwork, it needs to find a PNG file named iTunesArtwork (no extension). Supposedly, this file needs to be at the root level of the .ipa file. However, iTunes will also be happy to find iTunesArtwork in the application bundle itself, deeper in the .ipa file.

3- Now to answer the precise question:

  • Q: Where does "Build and Archive" look for the iTunesArtwork file to include in the .ipa file?
  • A: It doesn't. If you want iTunesArtwork for iTunes, you need to include it in the target application bundle. It's wasteful, but iTunes will find it anyway.

At least, I wasn't able to have Build and Archive use my iTunesArtwork file at all. The only way to have it at all that I could find is to include it in the application bundle.

To do so, include it in your project and make sure it's included with the application target build items.

It's wasteful, because it needlessly uses disk space on the device after installation.