Ошибка Xcode при проверке — «Ваш бинарный файл не оптимизирован для iPhone 5»
Просто застрял с этой ошибкой, когда я пытаюсь опубликовать приложение в магазине приложений. Извините, потому что я не могу скопировать и вставить код ошибки, поэтому я опубликую изображение в своем вопросе.
12 ответов
Вы уверены, что файл 568h на самом деле имеет формат PNG ? Также убедитесь, что вы предоставили поддержку iphone 5 для всех ваших экранов? Только добавление [email protected] не гарантирует поддержку iphone 5. Вы должны проверить кадрирование всего вашего вида для iphone 3.5 «и 4» устройства.
Вы можете создавать кадры с помощью кода или автоматического изменения размера, что является другим делом.
Добавьте это изображение ([email protected]) в свой проект на верхнем слое, как показано ниже.
Изображение для добавления:
Я столкнулся с той же ошибкой, и ее исправили, следуя инструкциям на этой странице:
Я столкнулся с этой проблемой, когда использовал несколько раскадровок в iOS 9. Я решил ее, перейдя в каталог проектов -> General, затем для «Launch Screen File», выбрав «Main»
Я только что выбрал: «Не использовать каталоги ресурсов», а затем добавил фотографию со скриншотами в: «Файлы поддержки».
Я также страдал от той же проблемы и нашел решение, как описано в шагах: 1) Я переместил все png по умолчанию в корень моего проекта. 2) Добавлен еще один Default-568h размером <320,568>в корень.
Приведенное выше решение работает без добавления ключа UILaunchImages в .plist.
Я получаю эту проблему с последних двух дней.
Я нашел эту проблему в своих заставках. Я сделал ошибку, конвертировав изображения в формате .jpeg в формат .png, а затем добавив изображения для запуска изображений. По этой причине часто появляется сообщение об ошибке при отправке приложения в itunes.
Чтобы устранить эту проблему, я взял новые изображения в формате .png из Photoshop и добавил их в Launch Images.
После этого я попытался отправить приложение, и оно было успешно отправлено.
Этот метод будет полезен для других.
вы должны убедиться, что вы отметили в iOS 6 и предыдущих размерах как LaunchImages , так и AppIcon в Images.xcassets
Пожалуйста, посмотрите здесь, у меня есть ответ на этот вопрос, прежде чем Сообщение об ошибке Xcode 6 «Таргетинг релизы до iOS 7.0 . »
Убедитесь также, что вы указываете на файлы в правильном месте. У нас только была эта проблема после:
- Переход на вкладку «Общие» на целевом экране.
- Нажмите кнопку «Не использовать каталоги активов».
Имена файлов отображались правильно, но у нас была ошибка. Для решения этой проблемы щелкните маленький значок папки рядом с каждым из изображений запуска, перечисленных в таблице в этом разделе, и найдите правильный файл в папке ресурсов нашего проекта.
Это крайний случай, но у меня это произошло, если вы по ошибке добавили локализации, которые позже не использовали (и, следовательно, не добавили образ запуска iPhone 5). Выберите проект в Project Navigator. В средней панели выберите просмотр проекта (в отличие от одной из целей). На вкладке «Информация» перейдите к нижней части и убедитесь, что на ней нет посторонних локализаций.
Редактировать: перечитывание сообщения об ошибке. Полагаю, что это ускользает от этого, но иногда сообщение об ошибке не имеет смысла, пока вы не выясните, что это значит по-другому.
Источник
ERROR ITMS-90171: «Invalid Bundle Structure The binary file APP.app/libswiftRemoteMirror.dylib is not permitted
I’m going to convert sift 2.2 to swfit 3.0 and uploading to itunes store then get one error.
I’m so tired with this error:-
ERROR ITMS-90171: «Invalid Bundle Structure — The binary file ‘ideaPitch.app/libswiftRemoteMirror.dylib’ is not permitted. Your app can’t contain standalone executables or libraries, other than the CFBundleExecutable of supported bundles. Refer to the Bundle Programming Guide at https://developer.apple.com/go/?id=bundle-structure for information on the iOS app bundle structure.»
I have try some solution like this question but did not get proper result.
Any one can hlep me out.
4 Answers 4
I assume that you’re generating the IPA on the command line.
Your best option is to simply use the Xcode7/8 default way to generate an IPA file:
This approach will automatically take care of removing the libswiftRemoteMirror.dylib from the resulting IPA file.
Alternatively you will have to remove the dylib on your own. You’ll have to do it after creating the xcarchive but before exporting it to an IPA file: rm -rf $APP_PATH/libswiftRemoteMirror.dylib
EDIT
In case you can’t rebuild the IPA on your own and just want to remove the libswiftRemoteMirror.dylib from it, you’ll have to resign it: unzip the IPA, delete the dylib, re-codesign the bundle and zip it together again:
Replace $APP_NAME with the name of your App bundle. Replace $IDENTITY_NAME with the name of the codesign identity used to originally sign the app. If unknown, you display it with codesign -dvv Payload/$APP_NAME.app 2>&1 | grep Authority | head -1 | cut -d= -f2 .
The matching Certificate and Private Key must be present in your keychain for a successful resign. If your app uses special entitlements for push, associated domains etc., you’ll have to pass a proper —entitlements param to the codesign command above.
Источник
Неверный двоичный файл приложения iPhone
Я пытаюсь загрузить приложение в магазин приложений iPhone, но я получаю это сообщение об ошибке от iTunes Connect:
загруженный вами двоичный файл недействителен. Подпись была недействительной или не была подписана сертификатом Apple submission.
Примечание: детали исходного вопроса были удалены, так как эта страница превратилась в хранилище для всей информации о возможных причинах этой конкретной ошибки сообщение.
общие сведения о подаче приложений для iPhone в App Store см. В разделе шаги для загрузки приложения iPhone в AppStore.
30 ответов
по моему опыту, Xcode иногда путается в том, какой сертификат подписи использовать. У меня вошло в привычку бросать и перезапускать Xcode после любого изменения настроек подписи кода (и делать чистую сборку), чтобы обойти эту проблему.
Я просто хотел упомянуть, что у меня тоже была проблема с zip из команды линии, а также. Проблема заключается в том, как он обрабатывает символические ссылки по умолчанию. Использование:
zip-y-r myapp.молния приложение.app
решил эту проблему.
у меня была такая же проблема и решил ее таким образом:
сертификаты свойств были установлены на моей машине разработки и mobileprovision.embedded был включен в архив рассылки. Через час или около того поиска и копания я нашел источник ошибки. Внутри Xcode я скопировал конфигурацию выпуска и создал новую конфигурацию распространения, а затем изменил идентификатор подписи на мой сертификат распространения. Однако, несмотря на то, что он был обновлен в GUI файл проекта был обновлен неправильно.
Если вы столкнулись с той же ошибкой, посмотрите в своем [ProjectName].каталог xcodeproj для проекта.pbxproj файл и откройте его в своем любимом редакторе. Ищите раздел распределения. Мой сломанный выглядел так:
вы можете увидеть, что идентификатор подписи и профиль подготовки неверны во втором разделе. Отредактируйте его в соответствии с первым разделом, перестройте, и вам должно быть хорошо идти. Последнее выглядело это:
guids изменены, чтобы защитить невинных
та же проблема, другое решение.
в моем случае я сжимал файл с помощью zip -r myapp.zip myapp.app Оказывается, команда zip прикрутила сверток. Сжатие его из искателя заставило его работать.
У меня была такая же проблема, и после нескольких попыток-я удалил.plist права из прав подписи кода (просто оставил его пустым), и он построил штраф и загрузил, наконец.
еще одна точка данных: на некоторое время мое приложение прошло. Теперь я добавил поддержку покупок в приложении, и внезапно он терпит неудачу с проблемой «недопустимая двоичная/недопустимая подпись». При внимательном просмотре я обнаружил, что значение application-identifier в файле entitlements plist отключено.
это, скорее всего, связано с тем, что Я заменил профиль подготовки с wildcarded на app-specific (требуется для покупок в приложении). Неправильный идентификатор приложения квалифицированный по старому профилю. Он не соответствует идентификатору приложения в информации.plist, но, по-видимому, iTunes простил это.
вызывает «недопустимый двоичный файл».
У меня была та же проблема, что и при построении, я заметил, что подготовка не была добавлена в сборку.
исправление для меня состояло в том, чтобы установить сборку на устройство iphone, где я обычно использую симулятор, но тогда он не будет включать профиль подготовки.
Это может быть ошибка noob. Обычно вы не можете строить на устройстве, но когда вы делаете это для распространения, вы можете.
Ну, после повторения шагов несколько раз, я, наконец, успешно загрузил свое приложение.
Я не знаю точно, что это исправило, но до успешной попытки я закрыл Xcode и Firefox и перезапустил их. Думаю, в одном из этих приложений был плохой Джуджу.
вот проблема, с которой я столкнулся: я добавил двоичный файл в Subversion перед загрузкой. Comparessing/сжать бинарных затем включаются скрытые .каталоги svn, которые испортили подпись кода.
Я пробовал различные вещи после прочтения различных сообщений, включая те, что выше. Что наконец-то сработало для меня, так это начать все сначала! Я удалил все сертификаты и профили подготовки, связанные с моим приложением.
я воссоздал новый сертификат разработки и новый сертификат распространения. Я снова загрузил промежуточный сертификат. Затем я воссоздал профиль разработки и профиль распространения.
после установки трех сертификатов (I заметил, что в дистрибутиве были как частные, так и открытые ключи на этот раз) и два профиля подготовки (мой профиль распространения не был помечен как не имеющий действительного сертификата!), все работало.
Как только я принял решение отменить все и просто начать все сначала, потребовалось всего около 5 минут, чтобы создать новый материал и переустановить.
см. эту ссылку для решения:
короткий ответ: «в конце концов я дважды проверил свою информацию.плист и обнаружил что-то. Я добавил CFBundleIconFiles в новые рекомендации, но в списке массивов была пустая запись. Я удалил это и повторно подал, и это было, наконец, принято!»
У меня была аналогичная проблема, но в Monotouch. Я обнаружил, что мой профиль выпуска настроен на использование сертификатов разработчика. Это должно выглядеть так:
кажется, эта проблема имеет много причин. Вот решение моего:
Это относится ко всем, кто принадлежит к нескольким командам разработчиков (например, ваши собственные приложения и ваши компании).
Если вы создаете сборку с одним набором учетных данных и повторно подписываете ее с другим (например, для распространения adhoc / appstore), вы должны убедитесь, что сборка была первоначально построена и подписана учетными данными, принадлежащими той же команде разработчиков iOS, что учетные данные распространения, которые вы повторно подписываете, принадлежат.
поэтому не создавайте с учетными данными «Indy Dev Inc», а затем попробуйте развернуть с учетными данными» Company Inc». Убедитесь, что вы настроили как «Company Inc» dev, так и учетные данные распространения и используете их.
У меня была та же проблема. Я был готов бросить полотенце на эту проблему, но я понял это, когда я пошел, чтобы проверить свой код с помощью Murky. Я всегда просматриваю различия в файлах, которые изменились, прежде чем регистрироваться. При этом на этот раз я заметил, что проект.pbxproj файл был изменен. и в разделе дистрибутива запись «PROVISIONING_PROFILE[sdk=iphoneos*]» была пустой.
выход и перезапуск Xcode не работали для меня. Вместо этого я вошел в оба моих параметры проекта и цели и изменили подпись кода, чтобы напрямую выбрать мой профиль распространения, а не полагаться на функцию автоматического выбора. Это вызвало проект.файл pbxproj для заполнения правильными значениями, даже если функция автоматического выбора предположительно выбрала тот же профиль, который я выбрал вручную.
после попытки всех других исправлений, перечисленных здесь, мы зарегистрировали TSI с Apple. Выполнив все шаги в техническое Примечание TN2250 наша проблема была вызвана тем, что был закрытый ресурс отсутствует или недействителен. В нашем случае это было ._.DS_Store .
The «..»называется двойным файлом Apple и является результатом копирования папки проекта Xcode, * unzipped*, на и обратно из файловой системы, которая должным образом не поддерживает HFS+’s ‘resource forks’ (используется для кода подписывание.) Эти лишние «..»файлы приводят и вызывают сбой проверки подписи кода.
чтобы очистить проблемные двойные файлы Apple из папки проекта Xcode, выполните команду dot_clean в папке проекта Xcode, выполните чистую сборку, а затем повторно выполните архивацию и повторное подключение отправки.
Примечание: Вы можете просто перетащить папку проекта в терминал, чтобы автоматически заполнить путь
нет сообщения, когда вы запускаете команду, но сборка проекта может показать предупреждение о файле при следующей сборке. Вы можете игнорировать это, приложение будет проверять и отправлять успешно.
решил это, очистив myProject.xcodeproj файл (щелкните правой кнопкой мыши, открыть пакет), пакет содержал файлы от со-разработчика, после удаления этих проблема была решена
для меня решением было создание распределительной сертификации на: Портал Подготовки Разработчиков Apple.
для чего это стоит, я хочу добавить, что исправила эту проблему для меня. У меня ? (вопросительный знак) в названии моего приложения, которое вызвало ошибку.
Я получил недопустимый двоичный файл, если приложение не использует удаленное push-уведомление, но я оставил код для регистрации push и делегатов обратного вызова для регистрации/получения удаленного уведомления незафиксированным, даже если код не используется.
Это последние. Мое последнее представление на прошлой неделе было в порядке. На этой неделе он возвращает недопустимый двоичный файл. К счастью, есть письмо, которое объясняет ошибки.
У меня была аналогичная проблема, но я не права.файл plist. Однако после дюжины неудачных загрузок я проверил свою информацию.плист и обнаружил что-то. Мой массив CFBundleIconFiles имел пустую запись. Я удалил это и повторно подал, и это было, наконец, принято!
серьезно, насколько сложно было бы Apple разоблачить такие ошибки проверки?
Edit: это не сразу apparant, где CFBundleIconFiles, потому что они используют другой имя. В представлении сведений о проекте Ctl нажмите и выберите «Показать необработанные ключи / значения», а затем вы увидите ссылки на CFBundleWhatever. В случае этого редактора он пытался использовать несуществующий icon=72-@2x.png файл.
мои две копейки:
загрузите последнюю версию загрузчика приложений. Я только что обновил и теперь получаю другое сообщение об ошибке.
Я только что прошел через эту проблему (снова), но на этот раз я обнаружил, что мой профиль распространения имеет статус «недействительный». Если вы считаете, что все остальное правильно, дважды проверьте статус на портале и обновите/повторно загрузите все, что не находится в активном состоянии.
Я получил недопустимый двоичный файл после загрузки приложения, без электронной почты о том, почему это не удалось. Я попытался сделать пару вещей сразу, и я не уверен, какой из следующих фактически исправил его:
- Перезапущен Macbook Pro
- переместил исходный код моего проекта с диска NTFS на диск HFS+ и перекомпилировал.
У меня была проблема с этим и 4.3 GM SDK. Одно из наших приложений не сделает его мимо полученной загрузки. Это оказалось проблемой профиля подготовки. Я восстановил профиль app store, и он работал нормально.
мое решение включало создание нового идентификатора приложения. Я не уверен, почему это исправило его, но я подозреваю, что это могли быть несоответствующие идентификаторы пакета — создание нового идентификатора приложения заставило меня убедиться, что мое приложение и iTunes ожидали того же.
для меня просто установка сертификатов «Release» под «подписанием кода» исправила это. Первоначально они были настроены на «не кодовый знак».
для меня проблема была решена путем resaving PNG-изображения с опцией non-interlaced. В предыдущих версиях interlaced png были разрешены, но знайте, что эти изображения могут вызвать недопустимый двоичный файл.
мое сообщение apple: Поврежденный файл значка-файл значка iconGQ@2x.png похоже, она испорчена. Ваш значок не должен быть чересстрочным файлом PNG.
вы можете увидеть, если PNG переплетается с помощью команды «файл» в терминале: Eva-Madrazos-MacBook-Pro-2: GQ 7 интеграция объявления Eva$ file *.формат PNG По умолчанию.png: PNG данные изображения, 320 x 480, 8-бит/цвет RGB, не чересстрочный
Я хочу указать на возможность электронной почты Apple и попросить их проверить свои журналы. Я так и сделал, предварительно перепробовав кучу вещей. Спустя почти четыре недели пришлось напомнить им об этом, но в конце концов они ответили и указали точное место вопроса.
проблема в моем случае заключалась в том, что я ранее пробовал другие значки приложений, и ссылка на старое изображение все еще оставалась в «CFBundleIcons». Я использовал функцию перетаскивания, чтобы установить значок, но Я не заметил, что старый контент не был полностью очищен до добавления новой ссылки.
чтобы увидеть ошибочную ссылку, необходимо было развернуть стрелки для просмотра каждого подэлемента в файле plist. Один из советов-щелкнуть правой кнопкой мыши по файлу и выбрать опцию для просмотра необработанного содержимого. Таким образом, вам не нужно ничего расширять.
Я пробовал все другие предлагаемые решения, но ничего не помогло.
в итоге я создал новый проект Xcode и скопируйте мой код и ресурсы. Это сделало трюк, и мое приложение было помещено в очередь обзора.
Я также могу порекомендовать яблоки технические примечания по подписанию кода для отладки/проверки.
uuid не допускается. Я исправил это, удалив все [[UIDevice currentDevice] uniqueIdentifier];
Источник