Mac App Store ICNS Error

I recently ran into an error similar to the following error when trying to publish a macOS application through Application Loader.

ERROR ITMS-90236: "Missing required icons. The application bundle does not contain an icon in ICNS format, containing both a 512x512 and a [email protected] image. For further assistance, see the Apple Human Interface Guidelines."

What was strange is I had a ICNS file in my bundle and everything looked to be working correctly. Sadly I was trying to package the application for deployment in the command line, so it was much more difficult to debug than the graphical interface that Xcode provides.

I was able to fix it by creating a folder called MyIcon.iconset with 10 files in it. You can see the files inside the folder below.

Screen-Shot-2018-02-01-at-9.52.00-AM

For each file the image size was the same pixel dimensions as described in the file name. For example icon_256x256.png was 256 pixels by 256 pixels. When the file name was marked with @2x the pixel dimensions would double. So [email protected] would be 512 pixels by 512 pixels.

I was able to resize my images super quickly using my new macOS application ImgSizer, which you can download from the Mac App Store to resize your images in a breeze.

256

After ensuring that folder is setup correctly, I navigated to the folder that contained the folder I just created in Terminal and ran the following command.

iconutil --convert icns MyIcon.iconset

This generated a .icns file that I was able to add to my bundle.

Sure enough, after ensuring those files were all correct in that folder and generating the icns file Application Loader accepted my bundle and I was able to submit for review to Apple.