Проблема подписания кода в Xcode версии 8

Я обновил свой Xcode до версии 8 после выпуска iOS 10. Apple внесла некоторые изменения в процесс подписания кода, и теперь он доступен в общем разделе настроек цели. Но проблема в том, что мой профиль обеспечения доступа к продукту отображается как неприемлемый. Это сообщение об ошибке приходит:

"xxxproductionprovisioningprofile" не включает в себя сертификат подписи "iPhone Distribution: xxx (xxx)".

Я снова создал профиль обеспечения, используя тот же сертификат распространения. Сертификат распространения также присутствует в связке ключей. Все работало нормально в версии 7.3 Xcode и ранее. Любая помощь приветствуется.

10 ответов

Решение

Я тоже столкнулся с этим и исправил это:

1- удаление всех сертификатов моего аккаунта из цепочки для ключей,

2 - удаление всех профилей обеспечения из xcode, а затем

3- загрузка профилей обеспечения снова через xcode, а также

4- добавление сертификатов снова в цепочку для ключей.

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

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

Я столкнулся с той же проблемой, исправил ее без необходимости удалять и загружать все заново.

Я просто включил автоматическую подпись, подождал, пока она обнаружит мои сертификаты подписи, а затем отключил ее. После этого я смог повторно выбрать нужные профили обеспечения, и Сертифицированная подпись была обнаружена, как и должна.

Хорошо, если вы не хотите удалять все предварительные профили и сертификаты, ни использовать автоматические предварительные профили, попробуйте выполнить следующие действия:

  1. Удалить предварительный профиль из учетных записей (cmd +,), где вы можете увидеть список всех предварительных профилей в соответствии с вашим пользователем.

  2. Удалить сертификат из цепочки для ключей (Логин - Сертификаты - Поиск сертификата, вызывающего конфликт)

  3. На панели разработчика (сертификаты, идентификаторы и профили - профили обеспечения) включите свой предварительный профиль, который конфликтует с сертификатом, который вы хотите использовать.

  4. Скачайте вручную свой Предварительный профиль (он должен быть зеленого цвета в своем индикаторе).

  5. Из панели разработчиков перейдите в раздел "Сертификаты" и загрузите сертификат, связанный с временным профилем, который вы обновили на предыдущем шаге.

  6. Дважды щелкните по сертификату, который вы загрузили, чтобы установить и убедиться, что он находится в цепочке для ключей

  7. Дважды щелкните Предварительный профиль, который вы загрузили.

  8. Перейдите в Xcode (Project - Targets - General) и в разделе "Пение (Debug или Release)" вы увидите в Elegible новый предварительный профиль.

Он видит, что вам нужно обновить их обоих (сертификат и предварительный профиль), но если вы удалите один, другой сохранит предыдущие ссылки, а Xcode не обновится автоматически. Я сделал это, и это работает отлично.

Я получил ту же ошибку после обновления с Xcode7 на Xcode8. Мне не нужно устанавливать сертификаты.

  1. В моем случае мне нужно только перейти на Xocde -> "Настройки"->"Аккаунты".

  2. Там я должен снова войти в мою существующую учетную запись, срок действия логина истек.

  3. ВАЖНО: После этого перезапустите XCode.

Тогда все работает как положено.

с уважением

Эта проблема связана с тем, что закрытый ключ в сертификате в вашем профиле не совпадает с ключом в цепочке для ключей. Я разрешаю это

  1. удалить все сертификаты iPhone Developer в связке ключей.
  2. удалить все сертификаты в учетной записи Apple.
  3. используя xcode "Manage Certificates" для добавления сертификата, иногда у вас все еще есть сертификат на вашем Mac, но я не знаю, где он сейчас находится, и в случае успешного добавления ваша учетная запись Apple также отобразит этот сертификат, а затем вы сможете создать свой сертификат. профиль с этим сертификатом и скачать... перейти к 5
  4. если вы используете "Управление сертификатами", не можете добавить сертификат, вы можете создать новый сертификат и сделать шаги.
  5. Конец.

Как говорит @mgentilc, автоматическая подпись работает. Просто включите "Автоматически управлять подписанием" в разделе "Общие" -> "Подписывание", Xcode автоматически создаст и обновит профили, идентификаторы приложений и сертификаты.

Я столкнулся с теми же проблемами, но чтобы решить их, мне пришлось создать дополнительный "профиль обеспечения App Store" и "специальный профиль обеспечения".

Надеюсь, что это помогает другим.

Следуя инструкциям ниже:

  1. Выберите Цель -> Общие -> Подписание -> выберите нужную Команду (Это должен быть Супер аккаунт)
  2. Затем выберите Build Settings in Target, оставьте команду разработчиков такой же, как в Selected team. Установите профиль обеспечения с автоматической идентификацией и подписью кода с помощью iOS Developer.
  3. Выберите Проект -> Настройки сборки. Установите профиль обеспечения и идентификацию подписи кода с подробной информацией

В моем случае у моего профиля был действующий сертификат, но даже тогда он показывал ошибку с другим именем сертификата в нем (выбор неправильного сертификата). Мне пришлось вручную выбрать правильный сертификат для разработки в настройках сборки в разделе «Подписывание кода».

Другие вопросы по тегам