Xcode 7.2 не найдено соответствующих профилей обеспечения


150

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

Я получаю только:

В ваших настройках сборки указан профиль обеспечения с UUID «some_number», однако такой профиль обеспечения не найден.

Я попытался .certSigningRequestсгенерировать a для создания нового сертификата и профиля и убедился, что команда на вкладке General цели указана правильно. Всякий раз, когда я выбираю профиль обеспечения, все мои идентификаторы подписи кода появляются в идентификаторах в связке ключей, но ни одна из них не будет правильно соединена.

Кажется, что установка профиля обеспечения на автоматический, и идентификация подписи кода для iOS Developer устранит эту ошибку, но преимущество управления моими профилями обеспечения исчезло, так как я считаю, что Xcode управляет ими.

Любые мысли о том, почему настройка моих профилей инициализации и идентификаторов подписи кода на что-либо кроме Automatic и iOS Developer вызывает эту ошибку?

Ответы:


329

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

Я исправил это, открыв Xcode Preferences ( + ,), перейдя в раздел «Аккаунты» → « Подробнее» . Затем выберите все профили обеспечения и удалите их с помощью backspace (примечание: они не могут быть удалены в Xcode 7.2). Перезапустите Xcode, иначе список не обновляется должным образом.

Теперь нажмите кнопку « Загрузить все» , и у вас должны появиться все профили обеспечения, которые вы определили в Центре участников в XCode. Не беспокойтесь о сгенерированных XCode (с префиксом XC:), XCode восстановит их при необходимости. Перезапустите Xcode снова.

Теперь перейдите в раздел « Подписание кода » в настройках сборки и выберите правильный профиль и сертификат.

Почему это вообще происходит? Понятия не имею ... Я разочаровался в понимании политики Apple в отношении подписи приложений.


23
Простое удаление профилей инициализации и повторная загрузка не помогли. Я должен выйти из Xcode и открыть снова.
Заарта

72
Я очень ненавижу Xcode, когда дело доходит до распространения в App Store. Когда они когда-нибудь облегчат этот сложный процесс?
Markckim

21
Xcode 7.3: вы больше не можете выделять (или удалять?) Профилирования. Попадание в забой просто игнорируется. «Xcode. Каждый релиз заставляет вас ненавидеть его чуть больше. (Тм)»
Майк Гледхилл,

7
В Xcode 7.3 вместо нажатия на клавишу возврата вы можете щелкнуть правой кнопкой мыши по профилю и выбрать «Переместить в корзину».
Энеко Алонсо

4
Этот ответ устарел, так как варианты «Учетные записи» -> «Просмотреть сведения», предложенные в ответе, не существуют в текущем Xcode. Стек действительно должен научиться отсеивать старые ответы, чтобы они перестали отображаться как лучший результат в Google.
Ян С

63

Попробуйте перезапустить XCode, прежде чем пытаться ответить на эти другие вопросы . Я собирался последовать совету, данному в других ответах, а затем заметил, что несколько человек сказали, что перезапуск XCode необходим после всех шагов. Все, что я сделал, это перезапустил XCode, и это устранило проблему. Кто знает, решит ли это проблему для вас, но стоит попробовать, прежде чем пробовать другие решения. Я на XCode 7.2.1.


2
Очень хороший совет - спасибо! У меня была эта проблема с моей сборкой AdHoc, пока релиз работал нормально.
Коко

да, скачайте ПП, затем выберите его, затем перезапустите XCode, у меня это сработало.
Василий

1
Да - попробуйте перезагрузить сначала. Это исправило это для меня.
Reefwing

1
Это исправило это и для меня! Спасибо.
adrum

3
~ 6 недель спустя, и я вернулся к этому ответу. Перезапуск XCode, кажется, работает каждый раз. Я бы снова проголосовал, если бы мог.
Adrum


31

У меня тоже такая же проблема, в Xcode 7.2

Это решается с помощью следующих шагов: -

1) Открыть настройки XCode,

2) Выберите подходящую команду,

3) Нажмите «Подробнее».

4) В разделе «Подпись личности»: нажмите «Сброс» для каждой из них.

5) В разделе «Обеспечение профилей». Нажмите «Скачать все».

6) Нажмите «Готово».

7) Зайдите в Xcode, соберите настройки, выберите его. На вкладке Общие вопросы должны быть устранены.

8) Перезапустите Xcode.

9) Сделайте финальную сборку.

Вот и все.


1
Я выполнил все шаги ... но, тем не менее, я получаю ту же ошибку, даже после перезапуска
Nikesh K

1
перезапуск xcode был для меня большим ... не могу поверить, что яблоко даже не рекомендует вам его перезапускать
Карим

5
Я также искал папку проекта для строки UUID и нашел ее в "project.pbxproj". После его отключения сборка прошла нормально. Изменить "PROVISIONING_PROFILE[sdk=iphoneos*]" = "82f0b3c1-a2d2-4202-9326-5eb37d8e41b8";на"PROVISIONING_PROFILE[sdk=iphoneos*]" = "";
davidanton1d

2
Я на Xcode 7.3 также. Я следовал этим советам, и все еще имею ту же проблему. Xcode. Каждый год я ненавижу это немного больше.
Майк Гледхилл

2
Это действительно ужасный совет в командной среде. Никто не должен нажимать магические кнопки сброса в Xcode.
Майк С


7

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


Я следовал всем идеям ... но, тем не менее, я получаю ту же ошибку, даже после перезапуска
Nikesh K

@NikeshK, если вы уверены, что все правильно, и это, безусловно, ошибка XCode, то вы можете попробовать переустановить XCode. Особенно, если вы не переустанавливали его годами, а только обновляли обновления.
alexey.hippie

@NikeshK, также, если ваши профили обеспечения были сгенерированы до последнего обновления программы Apple Developer, вы также должны воссоздать профили. Я сделал это следующим образом: перейдите на developer.apple.com, затем в разделы Provision Profiles, для всех профилей, которые я нажал Edit, Save, Done - внутри ничего не изменилось, но дата окончания срока действия будет обновлена. После этого шага вам необходимо повторно загрузить их через xcode
alexey.hippie

1
Для меня также клавиша возврата / удаления не работает. Щелкните правой кнопкой мыши и выберите «Переместить в корзину».
Асвин Кумар

4

Используя Xcode 7.3, я потратил слишком много времени, пытаясь выяснить это - ни один из ответов здесь или в другом месте не сработал - и в итоге наткнулся на смехотворно простое решение.

  1. В настройках команды настроек XCode удалите все профили обеспечения, как упомянуто в нескольких других ответах. Я делаю это с помощью щелчка правой кнопкой мыши, «Показать в Finder», Command + A, удалить - кажется, эти детали изменились в разных версиях XCode.
  2. Не перезагружайте никакие профили. Вместо этого выйдите из своих настроек и пересоберите свой проект (я создал его для своего подключенного iPhone). Через некоторое время в последовательности сборки появится предупреждение, информирующее вас о том, что профили инициализации не найдены, и спросит, хотите ли вы, чтобы это было исправлено автоматически. Выберите, чтобы исправить это автоматически.
  3. После того, как Xcode сделает что-то, у вас будет волшебный новый профиль обеспечения, предоставляющий то, что нужно вашему приложению. С тех пор я загрузил свое приложение для TestFlight, и оно прекрасно работает.

Надеюсь, это кому-нибудь поможет.


работал для меня, но не с той же последовательностью шагов. Я советую повторять эти шаги больше, чем после добавления некоторых действий (сборки, выхода и перезапуска Xcode и т. Д.)
lucianoenrico

Это июль 2017 года, но вы - единственные, кто работает для меня;)
RomanMinkin

3

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

Я обнаружил сертификаты с сообщениями об ошибке «этот сертификат имеет недопустимого пользователя» и просроченный сертификат Apple Worldwide Developer Relations.

Удалите их и установите новый сертификат AWDRC по адресу https://developer.apple.com/certificationauthority/AppleWWDRCA.cer.

Затем следуйте принятому ответу, чтобы заставить Xcode использовать новые сертификаты.


1
Это отдельная проблема, как показано здесь: stackoverflow.com/questions/32821189/…
n8yn8

1
Я не получил это сообщение об ошибке, я получил именно то, что было у ОП.
Энтони

2

Для меня я попробовал следующие 2 шага, которые, к сожалению, не сработали :

  • удаление всех предварительных профилей из учетных записей предпочтений Xcode → Просмотр сведений, загрузка всех предварительных профилей.
  • Перезапуск Xcode каждый раз.

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

Этот сертификат имеет недействительный эмитент

введите описание изображения здесь

  • В доступе цепочки для ключей перейдите, чтобы Посмотреть -> Показать Истекшие Сертификаты.
  • Ищите сертификаты с истекшим сроком действия в цепочках ключей входа в систему и системы, а также в «Центре сертификации отношений с разработчиками Apple Worldwide».
  • Удалить все просроченные сертификаты.
  • После удаления просроченных сертификатов перейдите по следующему URL-адресу и загрузите новый сертификат AppleWWDRCA , https://developer.apple.com/certificationauthority/AppleWWDRCA.cer.
  • Дважды щелкните по недавно загруженному сертификату и установите его в свою цепочку для ключей. Может видеть сертификат действительное сообщение.

введите описание изображения здесь

Теперь перейдите в приложение xcode. target → Build Setting → Provisioning Profile. Выберите значение из «автоматического» для соответствующего профиля обеспечения. Бинго !!! проблема несоответствия профиля решена.


Фактически это была отдельная проблема: stackoverflow.com/questions/32821189/…
n8yn8

Однако, возможно, да, по крайней мере, в моем случае решение этой временной проблемы с фиксированным несоответствием профиля.
Альфонс Р. Дсуза

Это в конечном итоге решило обходной путь для xcode 7.2, который заставил меня сохранять xcode «Code code» как «автоматический» для запуска приложения на устройствах.
Альфонс Р. Дсуза

2

В моем случае проблема заключалась в том, что архив создавался с другим идентификатором TEAM-ID, чем тот, который сгенерировал профиль обеспечения (Me). Поэтому я получил ошибку:

«Не найден соответствующий профиль обеспечения: в настройках сборки указан профиль обеспечения с UUID, однако такой профиль обеспечения не найден».

Решить это:

  • Очистите и повторно загрузите ваши профили Provisioning из настроек
  • Перезапустить Xcode
  • во вкладке ОБЩИЕ свойства проекта, в КОМАНДУ попали:

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

  • Очистить и построить

  • Виола!

Надеюсь, это кому-нибудь поможет.



1

С Xcode 7.2.1, если вы уверены, что ваш профиль обеспечения является правильным (у него есть правильный Идентификатор приложения и сертификат, и соответствующий сертификат существует в вашем Доступе Цепочки для ключей), тогда установите Идентификацию подписи кода и установите Профиль обеспечения в Автоматическое.


1

Я сделал следующее: создал новый профиль обеспечения и использовал его. При настройке профиля обеспечения на вкладке настройки сборки были указаны неправильные номера профиля обеспечения (например, «983ff ...», как упоминалось в сообщении об ошибке, вот и все!). Исправленный к новому профилю обеспечения, затем Xcode 7.2 обновил себя, и собрал успешно.


Вы также можете установить значение «Автоматически» для всех записей в разделе «Профиль обеспечения». Это сработало для меня
Гарри Ван

1

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

введите описание изображения здесь


1

В xcode 7.3 я все еще получал ту же ошибку, мой сертификат был временным профилем, а это означало, что все в порядке, но я получал ту же ошибку, и мне не удалось удалить предварительный профиль в настройках xcode, поэтому я щелкнул правой кнопкой мыши на предварительном профиле, который дать возможность перейти в корзину, когда я нажал, ничего не произошло, но когда я закрыл окно настроек и снова открыл его, Command,предварительный профиль пропал, и опция загрузки была видна, я нажал кнопку загрузки, и она начала работать нормально



0

Для меня изменение конфигурации сборки с выпуска на Отладку решило проблему.

Вы можете найти конфигурацию сборки в Редактировать схему -> Выполнить -> Информация -> Настройка сборки

Очистите ваш проект и снова запустите.


0

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


0

Для меня ничто из вышеперечисленного не работало с XCode 7.3.1, потому что у меня не было ничего в подготовке профилей (срок действия истек). Мне пришлось подключить свой iPhone к Mac, а затем нажать кнопку «Исправить», если срок действия созданного другого профиля истекает через неделю.


0

При распространении в App Store вы выбираете «Продукт» -> «Достичь» и сталкиваетесь с «ошибкой знака кода, не найдены подходящие профили обеспечения», если учетная запись и загруженный файл .mobileprovision в порядке. Попробуйте нажать кнопку «Построить и запустить», чтобы запустить его на своем телефоне.

введите описание изображения здесь

И появится диалоговое окно с кнопкой «Исправить», просто нажмите «Исправить», чтобы сделать следующее ... Наконец, ваше устройство будет иметь действительный файл обеспечения. Просто сделайте «Продукт -> Достичь» еще раз, все в порядке!


0

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

Надеюсь это поможет!



-2

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.