Ошибка ITMS-90717: «Неверный значок App Store»


197

При попытке отправить приложение Itunes Connectя получил следующую ошибку.

iTunes Store Operation Failed

Error ITMS-90717: "Invalid App Store Icon. The App Store Icon in the asset catalog in 'YourApp.app' can't be transparent nor contain an alpha channel."

Ошибка ITMS-90717 Я убедился, что отправил файл без прозрачности. Таким образом, ошибка сохранилась в подчинении iTunes Connect.


Похоже, дубликат stackoverflow.com/questions/25681869/… для меня.
Мартин Р

2
Не связано с iOS или Swift.
Мартин Р

1
@MartinR вопрос в другом. Мой вопрос - когда вы отправляете приложение через XCode, вопрос, который вы показываете, заключается в загрузке изображения непосредственно в iTunes Connect.
Гарольдо Гондим

1
Итак, одна большая вещь, которую мне не хватало, это переархивировать файл. Тогда загрузите это снова, и это работает. Может быть, какой-то другой нуби застрял в этот момент, поэтому здесь я упоминаю об этом.
konsti1337

Удалите альфа-канал на ваших значках приложений в папке проекта.
Мэдди

Ответы:


393

Ниже решение работало для меня

  1. Нажмите и откройте значок App Store (1024 * 1024) в приложении предварительного просмотра.
  2. Экспортируйте его, сняв галочку с альфа- канала.
  3. Замените текущий значок App Store на недавно экспортированное изображение значка.
  4. Подтвердите и загрузите.

Примечание: это не будет работать в Mac OS High Sierra, попробуйте более низкую версию для экспорта без альфа-версии или используйте любое из приложений для редактирования изображений или попробуйте следующие варианты.

Альтернатива 1: (с использованием Sierra или High Sierra и Ionic)

  1. Скопируйте и вставьте значок App Store на рабочий стол.
  2. Откройте изображение. Нажмите Файл меню-> Дублировать.
  3. Сохраните его, сняв галочку с альфа- канала.
  4. Замените текущий значок App Store на этот.
  5. Подтвердите и загрузите.

Альтернатива 2: если дубликат не работает, попробуйте открыть его в режиме предварительного просмотра, а затем выполнить экспорт файла. Я был в состоянии отменить выбор альфа-канала там. - Алехандро Корредор.

введите описание изображения здесь


3
Это не будет работать на Mac OS High Sierra, попробуйте более низкую версию для экспорта без альфа. Надеюсь, это кому-нибудь поможет.
Satheeshwaran

2
Как сообщил @satheeshwaran, в Mac OS High Sierra у меня тоже не работает.
auspicious99

10
Используя High Sierra и Ionic, я нашел изображение проблемы в следующей папке: [имя приложения] / platform / ios / [имя приложения] /Images.xcassets/Appicon.appiconset/icon-1024.png. Мне пришлось скопировать его на рабочий стол и сохранить как, не снимая флажок Альфа, затем переименовать его в «icon-1024.png», затем удалить оригинал и скопировать новый файл обратно в исходную папку. Экспорт не работал, хотя ошибки не отображались, и были установлены все разрешения / 777. Надеюсь, это поможет кому-то спасти тот день, который я только что потерял.
Ральф Хинкли

2
Работал для меня с высокой сьерра
Абдельрахман Эллити

3
Работал для macOS Mojave 10.14.1 и Xcode 10.1 с использованием первого решения.
Iphondroid

88

Я столкнулся с той же проблемой и не смог ее исправить с помощью предоставленного решения от Shamsudheen TK. Ionic каким-то образом добавил прозрачность в мои иконки, даже если у исходного значка не было никакой прозрачности вообще. В конце концов мне удалось решить это:

Установите imagemagick (MacOS):

brew установить imagemagick

Удалить альфа-канал из всех изображений в папке ресурсов:

find ./resources/ -name "* .png" -exec convert "{}" -alpha off "{}" \;


4
Спасибо. Я уверен, что не могу дождаться, пока команда ionic / cordova исправит команду resourcesавтоматического удаления альфа-канала из PNG для сборок iOS.
pbnelson

У меня также была эта проблема с приложением Ionic в MacOS High Sierra, и это решение сработало! Спасибо!
Бруно Сильвано

после запуска этой команды есть флаг, который покажет, что происходит?
JP.

Зачем показывать мнеfind: convert: No such file or directory
Yuyang He

2
@YuyangHe convertявляется частью imagemagick. Вот почему это должно быть установлено.
Лусио

17

Вот решение, которое сработало для меня на High Sierra

  1. Откройте значок App Store (1024 * 1024) в Previewприложении (программа просмотра изображений OSX по умолчанию).
  2. Нажмите на Fileменю в строке меню и выберите Export. посмотреть скриншот
  3. Снимите Alphaфлажок, выберите, куда вы хотите экспортировать изображение и нажмите на Saveкнопку. посмотреть скриншот
  4. Замените текущий значок App Store на недавно экспортированное изображение значка.
  5. Подтвердите и загрузите.

9

Каким бы способом вы ни попробовали выше, вам нужно протестировать его, загрузив его в приложение, как я, чтобы убедиться, что оно работает и сэкономит ваше драгоценное время.

введите описание изображения здесь

введите описание изображения здесь


Это лучшее решение для проверки.
Анкит Кумар

6

Если при загрузке в iTunes Connect отображается эта ошибка для проекта ionic3, установите этот ОТВЕТ

Это моя ошибка проекта, когда я пытаюсь засекречить. введите описание изображения здесь

Наконец, следуйте этому ОТВЕТУ , ошибка устранена. введите описание изображения здесь


1
Это характерно для Ionic, так как этот вопрос не так, этот ответ, который вы указали, не соответствует этому вопросу.
Кассиано Монтанари

3

Даже .pngфайл без прозрачности ошибка сохраняется.

Решение было изменить .pngфайл в .jpgфайл.

введите описание изображения здесь


26
Плохое решение JPG потерял качество изображения. Лучше записать png без альфа-канала, как описано в сообщении.
Cy-4AH

3

Глупая ошибка с моей стороны, не архивировать приложение после удаления альфы. Просто продолжал отправлять мое старое заархивированное приложение и обнаруживал ту же ошибку альфа / прозрачности. Надеюсь, это кому-нибудь поможет.


2

Само сообщение об ошибке говорит:

«Недопустимый значок App Store. Значок App Store в каталоге ресурсов в« YourApp.app »не может быть прозрачным и содержать альфа-канал».

Все иконки приложений должны быть квадратными без прозрачности или полупрозрачными ( alpha value != 1.0).

Подсказка: значок приложения может иметь закругленные углы. (Поделитесь своими иконками приложений здесь)

Вот рекомендации Apple для App Icon - Human Interface


0

Используйте Alpha Channel Remover. Это позволяет вам перетаскивать иконки в приложение и убирает прозрачность.

Загрузите его отсюда: http://alphachannelremover.blogspot.com

Обновление: это не мой сайт


Дополнительная информация: начиная с iOS 8, Apple не принимает значки с прозрачностью. Вы должны создать квадратную иконку, которая может быть цвет фона по вашему выбору с иконкой в ​​центре.
Жоау Соуза

4
Это ваш сайт? Пожалуйста, прямо укажите, если это так или нет.
Филнор

0

Я попробовал несколько вещей, упомянутых в этом посте (кроме обмена на .jpg), но безуспешно. Я решил это, открыв файл в фотошопе и используя «экспорт в веб». В этом процессе / окне есть флажок для прозрачности.


0

У меня была эта проблема, и это было, потому что мой значок магазина приложений не был явно указан в моем config.xml. Как только я добавил строку

<icon height="1024" src="www/res/icon/ios/icon-1024.png" width="1024" />,

Кордова правильно скопировала его, не добавляя альфа-канал.


0

Мне удалось обойти проблему Mac Sierra OS, продублировав файл, перетащив новый файл на рабочий стол, открыв его в режиме предварительного просмотра, затем выбрав опцию экспорта (в меню «Файл»), а затем опцию сохранить ее без «альфа». подходит


0

Если у вас нет Mac, на окнах вы можете открыть Paint и сохранить как PNG с правильными размерами 1024x1024


0

Удалите альфа-канал с помощью этой команды в папке «Images.xcassets», эта команда удалит все альфа-каналы из ваших файлов .png и сделает цвет фона белым.

for i in `ls *.png`; do convert $i -background white -alpha remove -alpha off $i; done

0

Я также шелл-скрипт, использующий ffmpeg для изменения размера изображений без альфа-канала. Он работал для формата PNG нормально.

# Export ios app icons by ffmpeg scale command
# usage: sh export_ios_icons.sh {path_to_your_img}
# example: sh export_ios_icons.sh ./app_icon.png

# sizes of images
# you can get other size images by editing thisarray
size=(20 40 60 29 58 87 80 120 180 76 152 167 1024)
for i in "${size[@]}"
do
   : 
    ffmpeg -i $1 -vf scale=$i:$i output_$ix$i.png
done


0

Альтернатива :( Использование Sierra или High Sierra и Ionic )

  1. Скопируйте и вставьте значок App Store на рабочий стол.
  2. Откройте изображение. Нажмите Файл меню-> Дублировать.
  3. Сохраните его, сняв галочку с альфа-канала.
  4. Замените текущий значок App Store на этот.
  5. Подтвердите и загрузите.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.