Удостоверения недоступны - запрос администратора


111

У меня возникли проблемы при "архивировании" моего приложения. Я думаю, что есть недействительные профили из-за обновления iPhone до 5.1 и XCode до 4.2.2.

Я потратил более 4 часов на то, чтобы избавиться от проблем с сертификацией, используя этот поток шаг за шагом 3 раза (что требует много времени):

Получение предупреждения «Действительный идентификатор подписи, соответствующий этому профилю, не может быть найден в вашей связке ключей»

У меня все еще есть следующая неисправность: Ошибка сертификации XCode

Удостоверения недоступны. Администратор должен запросить удостоверения перед их загрузкой.

Через несколько секунд после обработки кнопка «Загрузить удостоверения» вернулась в это окно.

Вы знаете, как выбраться из этого леса сертификационной документации и устранить эту неисправность?


Я проверил чувствительность к регистру и не нашел никаких проблем. Я воссоздал все сегодня с идентификатором «мастера», который должен работать.
Nasenbaer

stackoverflow.com/questions/9643057/… не помог в моем случае
Nasenbaer

1
Может ли кто-нибудь обновить это для XCode 5. Каждое решение, представленное здесь, больше НЕ работает в какой-либо форме или форме. Apple все снесла из воды.
user1318747

Ответы:


154
  1. Посетить Центр участников

  2. Перейдите в «Портал подготовки iOS» -> «Сертификаты» (левая боковая панель) >> вкладка «Распространение».

  3. Отметьте поле «Provisioning Profiles» . Если пусто, далее (4)

  4. Перейдите в «Provisioning» (левая боковая панель) -> вкладка «Distribution» . Нажмите «Новый профиль» и заполните его. Вернитесь к (3) проверьте поле еще раз.

  5. Загрузите и «запустите» (дважды щелкните) новый профиль обеспечения.

  6. В настройках сборки вашего проекта выберите НОВЫЙ профиль обеспечения (он может иметь то же имя, что и старый)

  7. В настройках сборки вашего проекта обновите идентификаторы подписи кода (все) на новые, если они есть. (Срок годности старого, вероятно, истек, что является одной из основных причин сообщения об ошибке, которое вы видели)

  8. Убедитесь, что ваш идентификатор пакета правильный (КАСИТЕЛЬНАЯ ЗАЩИТА)

  9. Вернуться в XCode Organizer - Устройства. Нажмите КОМАНДА (левая боковая панель) и нажмите «Обновить» (справа внизу). Вы найдете XCode, чтобы получить новый профиль. Если загружен новый контент, повторите шаги 6 и 7 (они будут изменены!)

    * Если вы не можете найти команду, потому что вы используете более новую версию xCode, перейдите в настройки Xcode (нажав «Xcode» на панели инструментов Mac на в верхнем левом углу экрана) и перейдите к учетной записи, выберите свою команду и нажмите «Обновить». Если загружен новый контент, повторите шаги 6 и 7 (они будут изменены!).

    Если вы находитесь в разделе «Настройки» -> « Учетные записи», но по- прежнему не можете обновиться, то:

    • Перейдите на вкладку Учетные записи.
    • Выберите Apple ID в списке
    • Нажмите "Просмотреть подробности" в правом нижнем углу.
    • Нажмите на стрелку обновления слева внизу.
    • Xcode обновит обновленные учетные данные, и вы сможете приступить к проверке или распространению вашего приложения.

  10. Подтвердите или снова распространите свое приложение. Он должен работать.

  11. Если это не сработало, перейдите в «КОМАНДА» в настройках проекта> цели и выберите «Нет» ... Теперь, когда вы выбрали «Нет», вам нужно будет повторить шаг 7 и изменить идентификаторы подписи кода (все) и попробуйте снова заархивировать.

  12. Наконец, если ничего из вышеперечисленного не помогло. Просто создайте новый производственный сертификат И создайте новый профиль обеспечения с тем же идентификатором пакета. (Да, это сработает, если вы обновляете уже работающее приложение). Загрузите сертификат и пров. profile и запустите оба (двойной щелчок). Теперь повторите шаг 6 и заархивируйте. Это должно работать.


дополнительно в XCODE необходимо сделать выбор в проекте, где нужно выбрать элемент обеспечения. Спасибо за вашу помощь.
Nasenbaer

1
Я все еще получаю эту ошибку, хотя все выглядело нормально, ДО ТОГО, КАК я нажал «Обновить» на шаге 5. Затем она была отсортирована ....
Грег

5
@Takol, а что делать, если нет кнопки «КОМАНДА» (левая боковая панель) или «Обновить» (внизу справа) ???
Стивен

@stephen Отредактированное решение для вас!
Альберт Реншоу

1
Я не могу понять этот ответ. Не могли бы вы углубиться в каждый шаг? Я следил за каждым шагом и все еще получаю ту же ошибку, что и вопрос, указанный выше.
Тимоти Свон

17

@ Takoi ответ правильный. Однако в моей последней версии Xcode нет опции КОМАНДА в разделе «Устройства» Организатора. Вместо этого мне пришлось сделать следующее, чтобы обновить учетные данные:

  1. Перейдите в Xcode-> Настройки
  2. Перейдите на вкладку Учетные записи.
  3. Выберите Apple ID в списке
  4. Нажмите "Просмотреть подробности" в правом нижнем углу.
  5. Нажмите на стрелку обновления слева внизу.

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

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


1
тьфу, просмотрел около 100 сообщений SO, и это решило мою проблему. ПОЧЕМУ APPLE не обновляется автоматически!
Джон Риселвато

О Боже! Это было решение, которого я ждал около часа. Спасибо.
Вячеслав

Я по-прежнему получаю ту же ошибку, что и вопрос.
Тимоти Свон,

4

Убедитесь, что идентификатор пакета в вашем файле .plist в XCode совпадает с идентификатором пакета в itunesconnect, если он выключен, он не сможет сопоставить архив с профилем на itunesconnect при проверке / распространении.


3

Теперь это немного проще.

  1. Заходите в приложение itunesconnect и авторизуетесь
  2. нажмите "сертификаты"
  3. Предоставление профилей / распространение
  4. создать профиль,
  5. скачать профиль
  6. дважды щелкните по нему

2
Это решило мою проблему в XCode 5. Хотя я думаю, что это должно быть связано , 2. это «Профили обеспечения», и вам нужно создать профиль для распространения в App Store . Я создал только один для Ad Hoc (Testflight), и ошибка продолжала появляться, пока я не создал еще один для App Store.
Steffen Wenzel

1
В itunesconnect нет сертификатов
Дволе

1
В itunesConnect нет ссылки "сертификаты". :(
ed_is_my_name

3

Я являюсь участником 2 команд, и у меня возникла такая же проблема при загрузке одного из проектов.
Изменение General -> Identity -> Team на None в настройках проекта (XCode 5) позволило мне загрузить приложение в iTunesConnect.

Скриншот здесь


В общих настройках в Xcode нет удостоверения! Что делать?
Dvole

@Dvole, это не общие настройки XCode, а настройки проекта. Смотрите скриншот в моем обновленном ответе.
deko

2

Срок действия моего сертификата истек, в результате чего истек срок действия моего профиля подготовки.
Однажды я -

  • Обновил мой сертификат на веб-портале iOS
  • Нажатие "Изменено" в профиле подготовки.
  • Выбрал новый сертификат и нажал «Создать».
  • В Xcode я обновил свои профили подготовки

Ошибка исчезла


2

Наверное, где-то в потоке написано, все подробно не читал. Я просто хочу подчеркнуть это:

Из-за раздражающего поведения xCode после того, как вы все настроили, вы ДОЛЖНЫ очистить проект и выйти из xCode .

Затем перезапустите и соберите. Теперь вы знаете, работает это или нет.


Все еще наблюдаю эту проблему с xCode 6.1 год спустя. В некоторых случаях, когда вы перезагружаете сертификаты разработчика, вам также может потребоваться перезагрузить Mac. Возможно, из-за кеша Keychain. Просто чтобы сказать, если вы думаете, что все настроено правильно, но ничего не работает, сбросьте все!
Moose

1

Похоже, вам придется запросить еще один сертификат разработчика. Перейдите на веб-сайт центра разработки iOS и перейдите на портал подготовки. Щелкните вкладку сертификатов и следуйте инструкциям. https://developer.apple.com/ios/manage/certificates/team/howto.action

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


что это, есть способы исправить!
user1432813

1

Мой идентификатор пакета был назван иначе. Мне пришлось изменить его с Nyquist.GasBro на com.Nyquist.GasBro, что было у меня в профиле обеспечения.


1

Ни один из предыдущих ответов мне не помог, поэтому я публикую свою проблему.

  1. Центр разработки: сертификаты, идентификаторы и профили > Профиль подготовки> Распространение

Убедитесь, что существует профиль обеспечения распространения, а идентификатор приложения в нем точно такой же, как идентификатор пакета вашего приложения в Xcode (Параметры проекта> Общие> Идентификация> Идентификатор пакета).

  1. Xcode: Настройки проекта> Настройки сборки> Подписание кода:
    • Профиль обеспечения - выберите это имя профиля обеспечения распространения (не Разработка!)
    • Идентификация подписи кода - я выбрал автоматический, так как у меня только один.

PS Перед тем как это сделать, я удалил все неиспользуемые и просроченные профили подготовки и удостоверения подписи из Центра разработки и из Xcode. Затем обновите, как указано в других ответах: Xcode: Настройки> Учетные записи> (мой Apple ID)> Просмотреть подробности> Обновить.


0

Ответ, который вы ищете, заключается в том, что при создании запроса на сертификат для ОБЩЕГО ИМЯ вам нужно указать ЧЕЛОВЕЧЕСКОЕ ИМЯ, как в John Smith, а не имя приложения. Apple использует этот термин «Общее имя» двумя разными способами и не сообщает вам, что сертификат должен содержать ваше имя, тогда как в другой области они запрашивают общее имя и хотят имя приложения.


0

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


0

Я должен согласиться с теми, кто говорит, что профиль Ad Hoc Distribution не будет работать в этом 2014 году.

В настройках сборки найдите параметр «Подписание кода»: для выпуска выберите «Распространение в магазине», а затем выберите «Меню»> «Продукт»> «Архив».

Позже в окне «Органайзер» выберите свой архив и нажмите «Проверить». Это позволит вам выбрать профиль Ad Hoc и подтвердить ... затем выбрать Распространить, это позволит вам сохранить как файл .ipa.

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