Xcode ( Код доступа ):Ошибка кодового оформления приложения для iPhone
-
03-07-2019 - |
Вопрос
При создании нового приложения для iPhone в Xcode я получаю эту ошибку:
ошибка кодового оформления:подписи кода идентичности 'разработчик' не соответствует ни сертификат подписи кода в брелок.после добавления в связку ключей коснитесь файла или очистите проект, чтобы продолжить.
В чем же заключается решение?
Решение
Исправить это довольно просто.В окне результатов сборки (к которому вы, вероятно, попали, щелкнув значок ошибки в правом нижнем углу окна вашего проекта) измените выпадающее меню с "Устройство - iPhone xxx" на ‘Симулятор - iPhone xxx’.
(источник: kickasslabs.com)
Другие советы
Вы должны быть частью программы разработчика стоимостью 99 долларов, чтобы протестировать ее на самом телефоне.У Apple должна быть информация о том, как подписать ваш код, как только вы будете приняты в программу.
Я получил эту ошибку, когда случайно изменил параметр сборки идентификатора подписи кода на целевом уровне, а не на уровне проекта.Убедитесь, что у вас есть правильная информация, введенная на уровне проекта (получите информацию о проекте, а не о цели). Если вы изменили параметры целевой сборки, попробуйте удалить значения оттуда.Затем целевой объект унаследует настройки проекта.
Я бы также сделал "очистить все", затем вышел из xcode, удалил все из папки сборки и попытался выполнить другую сборку.(Это трюк Xcode voodoo, который, кажется, решает многие проблемы с подписью кода.)
Я только что решил свою проблему с подписью кода.Какой кошмар!Более 8 часов разочарования за два дня.Я пробовал новые приложения, новые названия приложений, новые сертификаты, удалял профили подготовки и т.д.По сути, у меня было два сертификата "iPhone Distribution" в моей связке ключей, из-за чего не удалось выполнить всю подпись кода.Но один был спрятан!Видимый сертификат был в моей связке ключей для входа в систему.Невидимый сертификат был в моей Системной связке ключей.Имейте в виду, добавляйте свой сертификат в любую связку ключей, но не в обе!Я удалил сертификат из системной цепочки для ключей, и он стал призрачным сертификатом.Он больше не отображается в системной цепочке ключей "Доступ к цепочке ключей", но он существовал в самом системном файле цепочки ключей, поэтому фактически он не был удален.Я запустил файл keychain для рассылки word, и вот оно!Мое решение состояло в том, чтобы удалить эту строку, содержащую дистрибутив iPhone, из файла keychain, который исправил подпись кода.В результате у меня сломалась системная цепочка для ключей.Но я могу снова подписывать приложения \ m/
это может показаться смешным, но я везде искал решение.В конце концов я обнаружил, что в Xcode в левом верхнем углу, выпадающем списке, где вы выбираете Device и verison, у меня было выбрано "debug" в выпадающем списке вместо release.Как только я выбрал release, проблема была исправлена.
Такая ситуация возникает, когда вы получаете проект Xcode от другого человека.
Вот что я сделал, чтобы решить эту проблему.
- Зарегистрируйте свой ключ в системе доступа к ключам.Вы можете загрузить свой ключ на портале подготовки iOS .(Приложение -> Утилита -> Доступ к связке ключей)
- Установите файл подготовки для приложения.
- Измените разработчика iPhone в конфигурации проекта.(Информация о цели -> Кнопка сборки -> Подпись кода -> Идентификатор подписи кода и любая iOS)
У меня была такая же проблема.Нашел исправление здесь:
В Keychain Access.app мой сертификат разработчика будет отображаться как "Этот сертификат был подписан неизвестным органом".Причина заключалась в том, что у меня не было промежуточного сертификата ADC (который вы можете загрузить из "Программы подготовки" на вкладке "Сертификаты".Как только я установил это, сертификат разработчика корректно отобразился в keychain, и мой код можно было развернуть на чертовом телефоне.
Никакого вуду не нужно.Иногда какое-то приложение меняет брелок по умолчанию, и Xcode перестает находить ключи разработчика iPhone.Решение простое (у меня оно сработало).:
- Элемент списка Запуск приложения для доступа к связке ключей
- Ctrl + щелкните на связке ключей, где вы хранили свои ключи разработки, и выберите Сделать связку ключей по умолчанию
- Наслаждайтесь разработкой отличных приложений для iPhone.
Когда ничего из вышеперечисленного мне не помогло, я случайно удалил устройство чтения карт с установленным на нем сертификатом электронной подписи, и теперь мое приложение собирается без ошибок.Если у вас есть такой сертификат, попробуйте на мгновение отключить его от сети.
Я только что решил свою проблему, сделав это:
- щелкните в вашей основной папке проекта в Навигаторе проектов
- в правом боковом окне выберите свою цель
- в разделе "Подпись кода" измените идентификатор подписи кода с того, каким он был, на ваш
- установите активную схему (вверху слева, рядом с кнопкой "Выполнить") на свой iPhone / iPad
Надеюсь, это поможет кому-нибудь там!