Command/usr/bin/codesign не удалось с кодом выхода 1-я ошибка кода
В настоящее время я отправляю свое первое приложение в магазин Apple.
Я выполнил следующие процессы
- Получен аккаунт разработчика
- Вход в Центр-член для создания идентификатора приложения
- Используемый доступ к брелокам для запроса и получения сертификата распространения
- Получил профиль подготовки, используя мой идентификатор и сертификат
Когда я создаю приложение, он отлично работает в симуляторе приложения и на фактическом ipad, однако, когда я переключаю свое приложение на Archive
на iOS-устройстве, у меня есть основная ошибка знака кода, которую я добавил ниже.
codesign /Users/Gaby/Library/Developer/Xcode/DerivedData/RoyalAppInspection-dthvtpxadkslqmhkwdpaqkyujscg/Build/Products/Debug-iphoneos/RoyalAppInspection.app
cd /Users/Gaby/Desktop/RoyalAppInspection
export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
export 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
/usr/bin/codesign --force --sign 79640A11C8D22589BD337496ABB8443581513846 --entitlements /Users/Gaby/Library/Developer/Xcode/DerivedData/RoyalAppInspection-dthvtpxadkslqmhkwdpaqkyujscg/Build/Intermediates/RoyalAppInspection.build/Debug-iphoneos/RoyalAppInspection.build/RoyalAppInspection.app.xcent /Users/Gaby/Library/Developer/Xcode/DerivedData/RoyalAppInspection-dthvtpxadkslqmhkwdpaqkyujscg/Build/Products/Debug-iphoneos/RoyalAppInspection.app
79640A11C8D22589BD337496ABB8443581513846: no identity found Command /usr/bin/codesign failed with exit code 1
Я понятия не имею, что делать, чтобы исправить это, поскольку я пытался убедиться, что все остальные аспекты процесса были выполнены правильно.
Одна из проблем, с которыми я столкнулся, заключалась в том, что когда я щелкнул файл профиля подготовки, который он не откроет, и "добавить в библиотеку" не появится (я не могу получить доступ к утилите настройки iphone по какой-то причине.) Я вручную добавил файл .mobileprovision к моему проекту xcode, но я думаю, что это также может быть источником моей ошибки.
Кто-нибудь, пожалуйста, помогите?
Ответы
Ответ 1
Вы почти сделали это самостоятельно, но в конце концов, похоже, что-то не так с вашим профилем.
Сначала я бы порекомендовал инструмент "заглянуть внутрь" профиля, чтобы убедиться, что он правильный: http://furbo.org/2013/11/02/a-quick-look-plug-in-for-provisioning/
Это просто добавит некоторую дополнительную информацию о профиле при выборе его в Finder и нажатии пробел (Быстрый просмотр).
Проверьте настройки Xcode:
- Xcode Perferences (CMD +,)
- Счета
- Выберите свой аккаунт слева
- Выберите подробности просмотра внизу справа
- Обновить (используя маленькую кнопку слева внизу)
![Xcode Settings]()
Xcode хранит профили в ~/Library/MobileDevice/Provisioning Profiles
Если вашего профиля распространения нет, дважды щелкните по нему.
Затем он должен появиться в этой папке, но с хэшированным именем, например, 1edf8f42-fd1c-48a9-8938-754cdf6f7f41.mobileprovision
На этом этапе плагин Quick Look пригодится :-)
Далее проверьте настройки вашего проекта:
- выберите цель (не проект), которую вы хотите встроить в Xcode
- перейти к настройке сборки
- ищите раздел "Подписание кода"
- проверьте, выбран ли правильный профиль в разделе "Профиль обеспечения" => "Выпуск"
![Build Settings]()
Затем проверьте настройки схемы:
- выберите меню продукта
- открытая схема подменю
- выберите схему редактирования...
- выберите "Архив" слева
- Конфигурация сборки должна быть установлена на "Release"
![Scheme Settings]()
Далее, проверьте настройки Trust
цепочки для ключей:
- открытый доступ к брелку (прожектор => брелок)
- выберите логин
- нажмите на сертификаты
-
iPhone Distribution: Elena Carrasco (8HE2MJLM25)
справа - щелкните правой кнопкой мыши, выберите "Получить информацию"
- открыть раздел "Доверие"
- установить "Использовать системные настройки по умолчанию"
- повторите шаги с 5 по 7 для
Apple Worldwide Developer Relations Certificate Authority
![Keychain]()
Далее, проверьте Keychain Access, закрытый ключ Access Control
:
- повторите шаги с 1 по 4 из предыдущей проверки
- разверните профиль, чтобы сделать ваш личный ключ видимым
- щелкните правой кнопкой мыши на закрытом ключе, выберите "Получить информацию"
- переключиться на "Контроль доступа"
- выберите "Подтвердить, прежде чем разрешить доступ"
- используйте кнопку "+", чтобы добавить "CodeSign" (обычно находится в
/usr/bin/codesign
)
Подсказка: если он не отображается в файловом браузере, используйте cmd + shift + g
чтобы ввести путь вручную - при использовании Carthage: добавьте сюда также
/usr/bin/productbuild
(спасибо в DesignatedNerd) - "Сохранить изменения"
![Keychain 2]()
Надеюсь, что один из этих трюков для вас!
Обновление (22.04.16):
Я только что нашел очень хорошее объяснение всего процесса подписания кода (его действительно стоит прочитать): https://www.objc.io/issues/17-security/inside-code-signing/
Ответ 2
Следующие шаги решили проблему для меня. У меня возникла проблема, когда он не компилировался для устройства или архивирования, отлично работает для симулятора.
- Откройте доступ к keychain.
- Заблокируйте брелок "login".
- Разблокируйте его.
Очистите и создайте после выполнения вышеуказанных шагов, и теперь все будет хорошо.
Ответ 3
Для меня были следующие шаги:
- Закройте
Xcode
.
- Откройте
Terminal
.
- Typed Command
xattr -rc /Users/manabkumarmal/Desktop/Projects/MyProjectHome
- Открыть Xcode.
- Убирали.
- Теперь работает и нет ошибки.
Ответ 4
Это сработало для меня. Дайте ему попытку:
cd ~/Library/Developer/Xcode/DerivedData
xattr -rc .
Ответ 5
У меня была эта ошибка в Xcode 8 и Mac OS Sierra. Перепробовал все вышеперечисленные решения и ни один не сработал. Это был единственный, который работал на меня. Откройте терминал и введите это:
cd ~/Library/Developer/Xcode/DerivedData
xattr -c *
Ответ 6
Для меня я просто очистил приложение, и он работал (cmd + shift + k), удалив ошибку. Я получил ошибку после обновления до версии 2.3.
Ответ 7
Делайте все, что предлагает d4Rk, это отличная прогулка.
если он еще не подписывается, у вас могут быть некоторые истекшие или отозванные сертификаты. Я нахожу, что это может произойти, когда вы работаете в команде.
- quit xcode.
- открыть доступ к Keychain.
- в разделе "Сертификаты", просмотрите все сертификаты "Распространение iPhone" и, если они истекли или отменены или иным образом недействительны, удалите их.
- то же, что и 3, но для раздела "Мои сертификаты".
- заново открыть xcode и повторить попытку.
Ответ 8
Для меня работала "Перезагрузка Mac-системы"
Ответ 9
Откройте проект в Xcode.
Выберите файл project.app
и щелкните по нему правой кнопкой мыши, выберите опцию "Показать в поиске".
Откройте терминал и перейдите к пути к файлу project.app
.
Введите следующую команду:
xattr -lr project.app
xattr -cr project.app
Откройте проект и запустите.
Ответ 10
Reboot также работал у меня. Интересно, что это проблема, позволяющая Xcode получить доступ к сертификатам. Когда я снова попробовал архив, я получил 2 всплывающих окна с вопросом, хочу ли я позволить Xcode получить доступ к моей цепочке ключей. После этого он работал нормально.
Ответ 11
Просто reset сертификат разработки и распространения и очистите свой проект.
После этого,
Перезагрузка также работала для меня. Интересно, что это проблема, позволяющая Xcode получить доступ к сертификатам. Когда я снова попробовал архив, я получил 2 всплывающих окна с вопросом, хочу ли я позволить Xcode получить доступ к моей цепочке ключей. После этого он работал нормально.
Ответ 12
Удалите существующие предварительно скомпилированные файлы:
rm -rf /Users/raghu/Library/Developer/Xcode/DerivedData/Solitare-fdaukpanamlzllacxvdzfbeqcrsg/
И попробуйте построить его снова.
Ответ 13
Я следовал за всеми вещами, упомянутыми в этой теме, но все еще сталкивался с тем же issue-
/usr/bin/codesign --force --sign A7F8FCD694D7923A3E57826398C3380E2E5A5446 --entitlements unknown error -1=ffffffffffffffff
Command /usr/bin/codesign failed with exit code 1
Я настроил автоматическую подпись с моей базой кода, которая будет работать с запуском xcode, а также с запуском xcodebuild с терминала с моего компьютера, но выдает ошибку выше, когда я запускаю его на конвейере jenkins или пытаюсь запустить на терминале с удаленно подключенного компьютера
В моем случае автоматическая подпись не работает, если доступ удаленный. потому что мне нужно открыть брелок перед использованием архива
security unlock-keychain -p "newpassword" "/Users/xyz/Library/Keychains/login.keychain"
пароли цепочки для ключей и пароль для входа в систему пользователя macOS X были другими, я изменил его на новый пароль, и он работает для меня.
Ответ 14
Я решил эту проблему очень легко.
- Просто перезагрузите компьютер (он все обновляет сам).
Надеюсь, это поможет..
Ответ 15
Перезагрузка не работала для меня.
Просто попробуйте загрузить и снова добавить сертификат в keyChain. Это сработало для меня. Когда я проверил Keychain Access, соответствующий сертификат отсутствовал. Устранена проблема при повторной установке сертификата.
Ответ 16
удалите сертификат в своем dev, затем переустановите и он будет работать!
Ответ 17
Я решил эту проблему. Если в вашем проекте есть файл.xcdatamodeld (имеется в виду, что вы используете coreData), убедитесь, что сформированные вами сущности идут в Инспектор моделей данных и проверяют, есть ли у Class codegen, manual/None или classdefination. если это определение класса, то сделайте это вручную/Нет, очистите проект и запустите снова. скриншоты приведены ниже:
![enter image description here]()
![enter image description here]()
Ответ 18
Если в решении @d4Rk ничего не работает, просто используйте приведенный ниже экран, чтобы удалить нежелательные/просроченные аналогичные профили. Щелкните правой кнопкой мыши профиль обеспечения, чтобы переместить его в корзину.
окно профиля обеспечения
Поскольку в моем случае после выполнения всех шагов я все еще получал одну и ту же проблему, и она устранена, когда я удалил старые устаревшие профили обеспечения с тем же именем, а затем использовал правильный в настройке сборки.
Ответ 19
Просто перезагрузка XCode работала для меня.
Ответ 20
В моей ситуации некоторые контейнеры были устаревшими после обновления моей ОС. Вот что это зафиксировало:
В терминале:
cd /Users/quaisafzali/Desktop/AppFolder/Application/
pod install
Затем откройте свой проект в Xcode и очистите его (Cmd + Shift + K), затем создайте/запустите.
Это сработало для меня, надеюсь, что это поможет некоторым из вас!
Ответ 21
У меня была такая же ошибка в январе 2018 года с xcode 8.2.1
Прежде чем попытаться открыть xcode, я не смог, потому что система обновлялась. Я попытался через некоторое время, и это позволило мне работать над этим, и затем я получил ту же ошибку.
Я следовал большинству решений, описанных в этой статье, но они не работали для меня.
Затем я вспомнил сообщение об обновлении системы и попытался перезагрузить компьютер.
И это сделало волшебство. Это сработало для меня.
Ответ 22
Перезагрузка у меня тоже сработала. После обновления до High Sierra у меня появилось множество проблем с паролем, и, похоже, мне нужно было ввести пароль для доступа к связке ключей к XCode.
Ответ 23
У меня недавно была эта проблема, и все вышеупомянутые решения не работали для меня.
Причина, по которой он работает на вашем симуляторе, но не на реальных устройствах, вероятно, связана с вашим Development Certificate
.
Поэтому я отозвал свой сертификат на портале Apple Developer Portal и запросил новый сертификат на своем компьютере. Вот шаги:
- Перейдите на портал разработчиков Apple и отозвайте свой старый (не работающий) сертификат разработки.
![revoke]()
- Добавить сертификат разработки приложений для iOS
![add]()
- Следуйте шаг от Apple
- Загрузите новый сгенерированный сертификат и добавьте его (двойной щелчок) в цепочку для ключей
![download]()
- Убедитесь, что это в ваших учетных записях XCode
![accounts]()
Тогда это работает!
Надеюсь, поможет!
Ответ 24
Простой способ (который будет делать все файлы PNG) я использовал:
Запустите эту команду в терминале
find . -name "*.png" -exec xattr -c {} \;