"Отсутствуют необходимые значки" при отправке приложения с помощью Application Loader
При отправке моей заявки с помощью инструмента 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 512x512@2x image. For further assistance, see the Apple Human Interface Guidelines."
Мой значок (на который ссылается файл Info.plist) содержит оба файла, поскольку он был создан с помощью следующей команды:
iconutil -c icns icon.iconset
Где папка icon.iconset содержит следующий элемент:
-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 icon_128x128@2x.png
-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 icon_16x16@2x.png
-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 icon_256x256@2x.png
-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 icon_32x32@2x.png
-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 icon_512x512@2x.png
Что может быть не так с моей иконой?
редактировать
Мой файл Info.plist:
<?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>
5 ответов
У меня возникла та же проблема, и я решил ее, преобразовав файл icns в папку inconset, а затем обратно в формат icns, используя icontool
, Тогда загрузчик приложений больше не жаловался.
Просто попробуйте обновить вашу систему (Инструменты командной строки) и используйте следующие команды для восстановления icon.icns
в 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"
Первоначально я создал файл icns из изображения png с помощью онлайн-конвертера https://iconverticons.com/online/ который всегда работал для меня хорошо. Когда я преобразовал icns в iconset, файлы значков выглядели нормально, но после преобразования обратно в icns размер файла icns был в 2 раза больше, чем у файла icns, сгенерированного онлайн-инструментом. Странно то, что когда я снова преобразовал большие icns обратно в iconset, оба каталога iconset содержали один и тот же список файлов.
Вероятно, это было вызвано некоторым обновлением требований icontool и appstore, которые еще не были применены в системе онлайн-конвертера.
Вы можете получить эту ошибку, даже если ваш основной значок приложения правильный. В моем случае были значки документов (также по ссылке из Info.plist), которые не имели требуемого разрешения 512x512@2x.
Интересно, что процесс проверки не будет жаловаться, если значки документов просто удалены / отсутствуют.
Это сообщение об ошибке будет правильным: "Пакет приложения содержит значок в формате ICNS, не содержащий изображения 512x512 и 512x512@2x".
It happened when i tried to submit a very old app to the app store. When I selected the app-target
General
settings in the
Project-Settings
, the
App Icons
section presented a "convert to assets" button. Once I did this, the icon was used from the assets catalog, which worked better than the old icns-file.
Шаги по исправлению проблемы со значком:-
1. сначала создайте папку и переименуйте ее в "icon.iconset".
2. скопируйте изображение размером 1024x1024 в эту папку 3. щелкните правой кнопкой мыши на этом изображении, чтобы преобразовать png в формат icns. если такой возможности нет, просто скачайте приложение Automator. 4. вы получите icon.icns. поместите это изображение icns в папку ресурсов (замените его) 5. добавьте путь в package.json Примечание: изображение должно иметь квадратный формат и иметь прозрачный фон (1024x1024)
В вашем xcode выберите Runner > Runner > Assets в верхнем левом углу рабочей области.
Бегун &amp;gt; Бегун &amp;gt; Активы
Вы могли заметить, что в списке есть пустой «элемент списка значков». Дважды щелкните пустой значок и перейдите к местоположению файла значка и нажмите «Выбрать».