Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"Missing required icons" when submitting app with Application Loader

When submitting my application using the Application Loader tool, I have the following error:

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

My icon (referenced by the Info.plist file) contains both files because it was created with the following command:

iconutil -c icns icon.iconset

Where the icon.iconset folder contains the following item:

-rw-r--r--   1 martin  staff    11K 18 mai 11:24 icon_128x128.png
-rw-r--r--   1 martin  staff    23K 18 mai 11:24 [email protected]
-rw-r--r--   1 martin  staff   3,3K 18 mai 11:24 icon_16x16.png
-rw-r--r--   1 martin  staff   4,2K 18 mai 11:24 [email protected]
-rw-r--r--   1 martin  staff    23K 18 mai 11:24 icon_256x256.png
-rw-r--r--   1 martin  staff    48K 18 mai 11:24 [email protected]
-rw-r--r--   1 martin  staff   4,2K 18 mai 11:24 icon_32x32.png
-rw-r--r--   1 martin  staff   6,6K 18 mai 11:24 [email protected]
-rw-r--r--   1 martin  staff    48K 18 mai 11:24 icon_512x512.png
-rw-r--r--   1 martin  staff    92K 18 mai 11:24 [email protected]

What could be wrong with my icon?

Edit

My Info.plist file:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>CFBundleExecutable</key>
    <string>Joker</string>
    <key>CFBundleGetInfoString</key>
    <string>Created by Qt/QMake</string>
    <key>CFBundleIconFile</key>
    <string>Joker.icns</string>
    <key>CFBundleIdentifier</key>
    <string>com.phonations.joker</string>
    <key>CFBundlePackageType</key>
    <string>APPL</string>
    <key>CFBundleShortVersionString</key>
    <string>15.05.25</string>
    <key>CFBundleSignature</key>
    <string>???</string>
    <key>CFBundleVersion</key>
    <string>15.05.25</string>
    <key>LSApplicationCategoryType</key>
    <string>public.app-category.video</string>
    <key>NOTE</key>
    <string>This file was generated by Qt/QMake.</string>
    <key>NSHighResolutionCapable</key>
    <string>True</string>
    <key>NSPrincipalClass</key>
    <string>NSApplication</string>
</dict>
</plist>
like image 353
Martin Delille Avatar asked May 18 '15 10:05

Martin Delille


3 Answers

I had the same problem and solved it by converting my icns file to an inconset folder and then back to the icns format using the icontool. Then the Application Loader did not complain anymore.

Just try to update your system (Command Line Tools) and use the following commands to regenerate icon.icns to icon_new.icns:

ICON_OLD=icon.icns
ICON_NEW=icon_new.icns
icontool -c iconset -o "${ICON_OLD%.icns}.iconset" "$ICON_OLD"
icontool -c icns -o "$ICON_NEW" "${ICON_OLD%.icns}.iconset"

Originally I created the icns file from png image using the online converter https://iconverticons.com/online/ which always worked well for me. When I converted the icns to iconset, the icon files looked fine, but after converting it back to icns, the icns filesize was 2-times larger than of the icns file generated by the online tool. Strange thing is, that when I converted again the larger icns back to iconset, both iconset directories contained the same list of files.

It was probably caused by some update to icontool and appstore requirements which was not yet applied on the online converter's system.

like image 167
Michal Fapso Avatar answered Oct 18 '22 22:10

Michal Fapso


You can get this error even if your main application icon is correct. In my case there were document icons (also referenced from Info.plist) which didn't have the required 512x512@2x resolution.

Interestingly the validation process doesn't complain if the document icons are simply removed/missing.

This error message would be correct: "The application bundle does contain an icon in ICNS format, not containing both a 512x512 and a 512x512@2x image."

like image 1
pi3 Avatar answered Oct 18 '22 23:10

pi3


Steps to fix icon issue:-

1.first create a folder and rename it as “icon.iconset”.

2.copy image of size 1024x1024 into that folder 3.right click on that image to convert png to icns format. if not that option available just download Automator App. 4. you will get icon.icns. place this icns image in resourcses folder (replace it) 5. add path in package.json Note:Image must be square format and have transparent background (1024x1024)

like image 1
Atchutha rama reddy Karri Avatar answered Oct 18 '22 22:10

Atchutha rama reddy Karri