Ошибка itms-90035 - Xcode

Я разработал приложение phonegap, которое отлично работает на iPhone. Теперь я хочу отправить приложение в Appstore. Ниже приведена процедура, по которой я следую, чтобы отправить мое приложение:

  • Откройте Xcode и заархивируйте проект
  • Нажмите на подтверждение (что успешно)
  • Нажмите "Отправить" в appstore (где я получаю следующую ошибку)

enter image description here

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

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

Пожалуйста, помогите:)

Ответ 1

У меня была та же проблема, оказалось, что одна из моих библиотек, установленных через bower, включает файл .sh, который не нужен. Я только что удалил файл, и все было успешно загружено.

Похоже, что Apple теперь заставляет разработчиков иметь .sh файлы в своих приложениях. Поскольку приложение Cordova/Phonegap не нуждается ни в одном из них, вы можете безопасно удалить их.

Ответ 2

Это случилось со мной после обновления до последнего Xcode (6.3.1). Это не только файлы .sh, поскольку я получал эти ошибки в сценариях node. Кажется, что ЛЮБОЙ файл, начинающийся С#!/Usr/bin/env, приведет к этим ошибкам. Я смог вызвать произвольные ошибки, добавив #! в случайный файл.

Временное удаление директивы #!/usr/bin/env из верхней части файлов будет работать, но вам нужно лучшее долгосрочное решение:)

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

Как отмечалось выше, это может быть временной проблемой со стороны Apple, не обязательно связанной с версией Xcode.

Ответ 3

EDIT: мне удалось избежать этой ошибки с помощью удаления моих проектов .sh файлов из моей целевой.

До сих пор я бы сказал, что ошибка на стороне Apple.

Вчера я отправил приложение без каких-либо проблем, отклонил его сегодня, чтобы отправить немного измененный двоичный файл сегодня, но, как и вы, я сейчас сталкиваюсь с той же ошибкой. Я думал, что это связано с Xcode6.3.1, потому что я установил его сегодня утром, поэтому я снова установил Xcode 6.3.0, но ошибка осталась. Затем я тщательно проверяю все:

  • Сертификаты
  • Профили Provisioning
  • iTunes подключить статус приложения

Но пока успеха нет.

Тот факт, что поиск "itms-90035" Google возвращает только 1 результат, заставляет меня думать, что это может быть временный инцидент.

Ответ 4

Как говорили другие, проблема связана с включением в пакет приложений файлов с именем "upload-dsym.sh". Вот шаги, которые я предпринял для преодоления этой ошибки: Перешел к настройкам проекта в Xcode и выбрал значок приложения "Цель". Выбрали вкладку "Фазы построения". Нажата на "Копировать ресурсы Bundle" Посмотрел файл, который был скопирован с именем "upload-dsym.sh". Я удалил этот файл, а затем загрузка прошла нормально.

Ответ 5

Это как-то связано с включенным .sh files, а не тем очевидным.


В нашем случае это была библиотека AudioKit. README говорит:

В большинстве случаев, при создании для iOS или tvOS, независимо от того, как вы устанавливаете фреймворк, вам нужно добавить фазу запуска к целевой цели проекта со следующим script:

"$BUILT_PRODUCTS_DIR/$FRAMEWORKS_FOLDER_PATH/AudioKit.framework/fix-framework.sh"


Иногда вы не видите их непосредственно в своей целевой build phases. Некоторые из сторонних библиотек могут вызвать эту ошибку, так как они имеют дело с .sh files.

Подробнее см. файлы сторонних библиотек /pods README.

Ответ 6

У меня такая же проблема. Затем я удаляю файл .sh. И я снова отправлю свое приложение. Успешные!

Ответ 7

Эта проблема была решена в CrittercismSDK CocoaPods 5.2.0: https://github.com/CocoaPods/Specs/blob/master/Specs/CrittercismSDK/5.2.0/CrittercismSDK.podspec.json

Вы можете либо перейти на sdk 5.2.0, либо удалить файл и удалить из файла Pods-resources.sh следующие строки:

    if [[ "$CONFIGURATION" == "Debug" ]]; then 
install_resource "CrittercismSDK/CrittercismSDK/dsym_upload.sh" 
fi 
if [[ "$CONFIGURATION" == "Release" ]]; then 
install_resource "CrittercismSDK/CrittercismSDK/dsym_upload.sh" 
fi 

Спасибо

Ответ 8

Сегодня у нас была очень похожая проблема и она была решена.

ОШИБКА ITMS-90035: "Недопустимая подпись" Запечатанный ресурс отсутствует или недействителен. Двоичный файл в пути [MyNiftyApp.app/MyNiftyApp] содержит недопустимую подпись. [...] "

Мы используем Jenkins-CI для процесса сборки вместе с плагином xcode. Когда я просмотрел журнал сборки jenkins, я нашел это сообщение об ошибке:

file added: /Users/Shared/Jenkins/Home/workspace/RELEASE_STAGE_my-nifty-app/build/MyNiftyApp.app/MyNiftyApp.app
file modified: /Users/Shared/Jenkins/Home/workspace/RELEASE_STAGE_my-nifty-app/build/MyNiftyApp.app/Assets.car
]
Codesign check fails : /Users/Shared/Jenkins/Home/workspace/RELEASE_STAGE_my-nifty-app/build/MyNiftyApp.app: a sealed resource is missing or invalid

После поиска этого Assets.car я нашел этот пост: https://issues.jenkins-ci.org/browse/JENKINS-21253 У пользователя была аналогичная проблема, он мог решить ее с помощью деактивации следующей опции плагина "XCode → Общие настройки сборки → Сгенерировать архив?" (это было верно до этого, теперь это ложь).

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

Ответ 9

Я решил это, просто удалив "двоичный" файл в ошибке.

Для вас ваш www/js/release.sh.

Для меня это были два избыточных файла bower, файл .sh и файл .js, который был расположен под папкой "bin" (возможно, поэтому он считал, что это двоичный файл?).

На боковой ноте кажется, что вы все равно можете продолжить процесс загрузки, просто нажав "Отправить" после того, как будут представлены ошибки в Application Loader.

Ответ 10

Я получил ту же ошибку, когда пытался загрузить приложение с помощью ApplicationLoader 3.0. Обновление до ApplicationLoader 3.1 (т.е. Последнее) исправило проблему для меня.

Ответ 11

В каталоге каталогов запущен:

grep -r '#!/usr/' *

Это покажет вам все файлы, которые могут быть выполнены. Обычно это включает файлы .sh и node.

Из результатов поиска находятся файлы, находящиеся в папке проекта (например, папка моего проекта - платформы /ios/www/ *), и удалите их, оставив остальные.

Ответ 12

есть еще одна папка в вашем каталоге с тем же файлом, просто удалите ее и попробуйте снова создать и загрузить.

Ответ 13

Для меня есть файл do- git в используемой библиотеке. Я удалил его, и он сработает! Ребята, убедитесь, что вы четко просматриваете все файлы в ресурсах Copy bundle на вкладке Build Phases, и я уверен, что вы найдете решение

Ответ 14

У меня была такая же проблема, используя как xcode 6.3.1, так и 6.4 бета. Мой сказал, что это мой файл main.o. Я заглянул в ресурсы пакета, и по какой-то причине был мой основной файл проекта. Я удалил его и снова заархивировал, чтобы отправить на itunes connect для testflight, и он загрузился нормально. Взял мне 3 часа, чтобы понять, что это был глупый файл. Это помогает. Кажется, вам нужно действительно обратить внимание на то, что вы отправляете в этом разделе "Копирование ресурсов Bundle" в фазах сборки. Независимо от того, какой файл он говорит вам, вам нужно удалить taht из этой области и попробовать.

Ответ 16

В моем случае я получил ошибку при отправке переподписанного файла ipa. Оказалось, что я посмотрел на пакет приложения в Finder, и он создал файл .DS_Store (это было после повторной подписи с использованием codesign, которая жаловалась бы, если бы файл присутствовал во время подписи).

После удаления файла .DS_Store загрузка прошла успешно.

Ответ 17

У меня была точно такая же проблема. Я писал об ошибке в myApp.app/myApp Decision: ищите файлы, которые начинаются со специальных символов или символов, отличных от английского. Я нашел, удалил и все заработало!