Ошибка при подписании кода: проверка неудачной команды

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

Неверная проверка кода. Подпись недействительна, содержит запрещенные права или она не была подписана с сертификатом распространения iPhone. (-19011)

Здесь весь журнал:

Validate "/Users/masonsocha/Library/Developer/Xcode/DerivedData/Multibrowser-brgeiknbjgrywwehhohafjwxjqnk/Build/Products/App Store-iphoneos/Multibrowser.app"
    cd /Users/masonsocha/Desktop/Apps/MultiBrowser
    setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    setenv PRODUCT_TYPE com.apple.product-type.application
    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/Validation "/Users/masonsocha/Library/Developer/Xcode/DerivedData/Multibrowser-brgeiknbjgrywwehhohafjwxjqnk/Build/Products/App Store-iphoneos/Multibrowser.app"

warning: Application failed codesign verification.  The signature was invalid, contains disallowed entitlements, or it was not signed with an iPhone Distribution Certificate. (-19011)
Executable=/Users/masonsocha/Library/Developer/Xcode/DerivedData/Multibrowser-brgeiknbjgrywwehhohafjwxjqnk/Build/Products/App Store-iphoneos/Multibrowser.app/Multibrowser
codesign_wrapper-0.7.10: using Apple CA for profile evaluation
AssertMacros: trust_result == kSecTrustResultUnspecified,  file: codesign_wrapper.c, line: 594
AssertMacros: profile,  file: codesign_wrapper.c, line: 918
codesign_wrapper-0.7.10: Failed to load provision profile from: /Users/masonsocha/Library/Developer/Xcode/DerivedData/Multibrowser-brgeiknbjgrywwehhohafjwxjqnk/Build/Products/App Store-iphoneos/Multibrowser.app/embedded.mobileprovision
 - (null)

Я уже пытался сократить длину имени проекта, что не помогло, в настоящее время я использую OSX Lion на Xcode 4.3.2. Я провел всю ночь, вытаскивая свои волосы, пожалуйста, помогите!

Ответ 1

У меня была такая же проблема.

Перейдите к доступу к цепочке ключей

  • Убедитесь, что у вас установлены общедоступные и приватные ключи. Это хорошая ссылка https://developer.apple.com/legacy/library/technotes/tn2250/_index.html

  • Я ранее скорректировал свои настройки сертификата Keychain, чтобы сделать работу Outlook, но это довольно сильно надуло подписание кода XCode.

После того, как я установил их в настройку "лучшая попытка" (см. снимок экрана), проверка достоверности была

enter image description here

Ответ 2

Может быть, xcode выбирает один из профилей разработки, чтобы подписать код с ним.

Убедитесь, что он использует профиль распространения

нажмите проект, в разделе "Настройки сборки" → "Подпись кодов" раскрывайте идентификатор подписи кода → "Отпустить" - убедитесь, что Any iOS SDK относится к профилю распространения.

Ответ 3

Вы можете решить, что он не оставляет выбор профиля для xcode. Вручную выберите правильный профиль release в настройках проекта, и он пройдет.

Ответ 4

У меня была такая же проблема, даже после проверки всех подписи. У меня был старый параметр "Может быть отлажен" в моем файле прав. Устранена проблема с переключением на задание с заданной задачей. Apple имеет инструкции по отладке проблем с подпиской.

Ответ 5

У меня была эта проблема, но я обнаружил, что ни одна из вышеперечисленных проблем не решила ее. В конце концов я нашел решение, выполнив Техническую ноту Apple (https://developer.apple.com/legacy/library/technotes/tn2250/_index.html) по этому вопросу.

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

  • Архивируйте сборку, за исключением развертывания adhoc.
  • Перейдите к ipa в finder, переименуйте в .zip.
  • Дважды щелкните, чтобы распаковать, откройте папку "Полезная нагрузка"
  • Откройте терминал и введите следующее:

    codeign --verify -vvvv -R = 'anchor apple generic и сертификат 1 [поле .1.2.840.113635.100.6.2.1] существует и (лист сертификата [поле .1.2.840.113635.100.6.1.2] существует или лист сертификата [поле .1.2.840.113635.100.6.1.4] существует) '/Path/to/your/app.app

  • Вместо ввода /Path/to/your/app.app перетащите файл *.app из папки Payload в терминал, убедитесь, что между окончанием команды и именем файла существует пробел, и нажмите return.

Я получил ошибку на выходе, в которой говорится, что "запечатанный ресурс отсутствует или недействителен", с именем файла, вызывающего проблему (он начинался с точки, что могло быть проблемой). Когда я искал имя файла в браузере проекта XCode, я нашел файл, но когда я посмотрел в Finder, он не был на диске.

Исправление было просто удалить файл из браузера проекта XCode, и ошибка исчезла. Я бы определенно сказал всем, кто получил аналогичную проблему - работайте над технологическими нотами Apple. Они немного плохо сформулированы, но решение, вероятно, будет где-то там.

Ответ 6

У меня была та же проблема, и я решил ее: