"Ваш бинар не оптимизирован для iPhone 5" (ITMS-90096) при отправке

Это мое первое приложение для iOS, и когда я пытаюсь отправить его в магазин приложений, он дает мне ошибку ITMS-90096.

error screenshot

Я думаю, что уже загрузил все правильные значки и изображения заставки. Он говорит что-то о запуске изображения для 4-дюймового дисплея на iphone-5, но я не знаю, где его добавить.

вот мой источник изображения запуска.

launch image source

Я новичок в разработке ios. У меня есть маленький фон для Android, и процесс добавления и отправки приложений ios мне кажется совершенно чуждым.

Ответ 1

  • Проверьте все эти изображения .PNG
  • Поместите эти изображения на корневом уровне вашего проекта.
  • Добавьте еще один splash.png с именем "[email protected]" для iPhone 5. Его размер должен быть 640 × 1136 пикселей.

Ответ 2

Обновление августа 2016 года

При использовании Xcode 7 + и таргетинга iOS 8 + рекомендуется удалить файл .xib и создать новый LaunchScreen.storyboard, используя данный шаблон: Добавить файлы...

И чем установить его в файле проекта в разделе Иконки приложений и запуск изображений: Иконки приложений и запуск изображений


Оригинальный ответ на октябрь 2015 г.

Так что, как @Aditya Deshmane, я также использую файл .xib в качестве моего "Launch Image".

Добавление обоих Default-568.png и [email protected] в мой корневой каталог не помогло решить мою проблему.

Мне пришлось добавить ключ UILaunchImages в свой Info.plist:

<key>UILaunchImages</key>
<array>
    <dict>
        <key>UILaunchImageName</key>
        <string>Default-568</string>
        <key>UILaunchImageSize</key>
        <string>{320, 568}</string>
    </dict>
</array>

Info.plist Как описано здесь: iOS Key UILaunchImages

Ответ 3

Вопрос уже ответил и работает, просто добавив еще один ответ, поскольку я получил аналогичную ошибку в разных сценариях.

В моем случае я использовал LaunchScreen.xib, который является альтернативой использованию всплесков изображений.

https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/LaunchImages.html

Как указано в ссылке выше "В iOS 8 и более поздних версиях вместо статического изображения запуска можно создать файл XIB или раскадровки.

Но даже после использования XIB я получил эту ошибку.

Чтобы решить эту проблему, я сделал снимок экрана с 4-дюймовым устройством под управлением iOS 8, который был размером 640 × 1136 пикселей. Переименовал его в "[email protected]", добавив его на верхний уровень в комплекте проекта.

Причина этой ошибки:

Когда яблоко перешло с 3,5-дюймовых устройств на 4,0 устройства, это изображение было обязательным, иначе приложение использовалось для работы в режиме почтового ящика (на 4-дюймовых устройствах вы увидите черные полосы сверху и снизу приложения). Поэтому, когда я пытался запустить приложение на 4-дюймовом устройстве/симуляторе с iOS 7.1, он действительно работал в режиме почтового ящика (когда я использовал только брызги на основе .xib). В тот момент, когда я добавил режим почтового ящика "[email protected]", а также одобренное яблоком приложение.

Ответ 4

В моем случае я не использую файл LaunchScreen, но имел значение там. Удалялось так:

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

Ответ 5

В Xcode 7 с iOS 9 SDK, если вы установите "цель развертывания" на 8,0 или выше и не имеете каталога активов, выбранного для "источника исходных изображений", он будет работать.

Ответ 6

Мне тоже было трудно разобраться. Это случилось со мной после того, как я обновил XCode до версии 7 (iOS 9). Как-то это неназначенные изображения запуска и изменили параметры запуска изображения с помощью непроверенного iPhone Portrait для iOS 6.0 и Prior из правой панели.

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

После того, как я проверил iPhone Portrait, он отображает назначаемый iPhone iOS 5 для iPhone. 6. Я просто перетаскиваю изображения в соответствующие держатели.

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

Затем я архивировал это задание и успешно загрузил двоичный файл в хранилище приложений. Надеюсь, это поможет.

Ответ 7

Попробуйте очистить "Запустить экранный файл" в "Значки приложений и запуск изображений"

Удалить файл экрана laucnh: удалить имя.

Ответ 8

Это решение предназначено только для Phonegap + DevExtreme + Visual Studio (Windows):

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

Для решения проблемы выполните следующие действия:

  • Создайте новое решение.
  • Удалите все файлы и папки, кроме "congif.xml" и файла решения.
  • Скопируйте существующие файлы и папки в новое решение. DONT COPY IMAGES, который включает изображения ICONS и SPLASH/LAUNCH.
  • В новом решении добавьте все иконки и изображения Splash из свежих.

Создайте это решение с помощью соответствующего сертификата распространения и отправьте IPA в App Store. Он должен решить ошибку "90096".

Спасибо.

Ответ 9

Из iOS9 вы должны добавить изображения запуска в корневой каталог проекта, а не в папку Images.xcassets. И установите изображения запуска в info.plist с помощью клавиши UILaunchImages, в моем примере:

<key>UILaunchImages</key>
<array>
    <dict>
        <key>UILaunchImageMinimumOSVersion</key>
        <string>7.1</string>
        <key>UILaunchImageName</key>
        <string>iPhone5Portrait</string>
    </dict>
    <dict>
        <key>UILaunchImageMinimumOSVersion</key>
        <string>7.1</string>
        <key>UILaunchImageName</key>
        <string>iPhone6Portrait</string>
    </dict>
</array>

Ответ 10

Использование XCODE 7.0.1 с приложением, у которого не было настройки образа запуска. Пытался использовать интерфейс для "создания" местоположений в файле .xcassets, но создал только набор с плохим именем.

Пришлось вернуться к XCODE 6.4, чтобы создать правильное расположение/установить имя "LaunchImage" и загрузить файлы.

Затем вернитесь к XCODE 7.0.1, и все кажется хорошим.

Похоже, что в XCODE 7.x есть ошибка, которая не будет правильно создавать изображения .xcassets.

Ответ 11

Я столкнулся с такой проблемой в своем проекте. 1. Проблема заключалась в использовании LaunchScreen.Xib без удаления LaunchImages в Images.assets. После удаления LaunchImages из Images.assets загрузка успешно завершена. 2. Установите цель развертывания более 8.0 Если вы хотите развернуть 7.0, вам нужно добавить запуск.

Ответ 12

Аналогично @Sanghoon, когда я получил эту проблему, это было связано с целенаправленными версиями iOS, для которых не было задано изображение запуска iPhone Portrait (хотя он отлично работал в XCode 6)

Я не люблю размещать все изображения запуска в корневой папке, каталоги изображений работают более элегантно, и вам не нужно указывать файлы в соответствии с соглашением @2x @3x, поскольку каталог изображений позаботится об этом.

Мой полный ответ здесь: fooobar.com/questions/91856/...

Ответ 13

Если вы поддерживаете только iOS9 +, вам нужно добавить LaunchScreen.storyboard(без ViewController) введите описание изображения здесь

И ссылайтесь на него в своей целевой

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

Ответ 14

Просто решила проблему, исправив мои снимки экрана запуска. Убедитесь, что у вас есть файлы png в качестве файлов изображений.

У меня были изображения "jpeg" и преобразовали их прямо в ".png", просто изменив имя. Это была проблема. Используемое приложение конвертера для изменения изображений, и все работает отлично.

Ответ 15

Еще одна вещь, чтобы проверить... ваш размер изображения должен быть правильным. У меня было изображение с заставкой с именем logo_640x1136.png, предоставленное дизайнером, и я не мог понять, почему я продолжал получать эту ошибку. Наконец, я проверил изображение с помощью file (командной строки). Оказывается, изображение на самом деле не 640x1136. Если вам не нравится командная строка, выберите изображение в Finder и нажмите Cmd + I, чтобы увидеть размер изображения в разделе "Дополнительная информация".

Ответ 16

Я знаю, что это прямо не отвечает на этот вопрос, но для других, надеюсь, это помогает: я исправил это, просто построив более высокую версию. В tiapp.xml я добавил <min-ios-ver>8.0</min-ios-ver> непосредственно под тегом <ios>.

Ответ 17

Я использую LaunchScreen и столкнулся с той же проблемой.

Удаление LaunchImage из Assets.xcassets решило проблему для меня.