2013-04-17 2 views
13

Срок действия моего объявления длится до 14 дней. В организаторе есть кнопка «возобновить» для моего ad hoc-профиля, но когда я нажимаю на нее, я получаю ...Невозможно обновить профиль Ad Hoc до истечения срока его действия, потому что сертификат не соответствует идентификатору сертификата.

В этой команде нет текущих сертификатов, соответствующих указанным идентификаторам сертификатов.

Профиль на портале обеспечения показывает активные, срок действия которых истекает 30-го числа. Я также вижу сертификат распространения с той же датой истечения срока действия. Я должен предположить, что этот сертификат является тем, который использовался для подписи профиля. Есть ли способ исправить это, не отменяя и не создавая новый профиль и сертификат ad hoc?

Если мне нужно начинать сначала, что лучше всего продолжать, не испортив мои тестовые программы.

Есть много сообщений и ответов на эту тему, но я не могу найти адресата, которые касаются этой конкретной проблемы, если сертификат не соответствует идентификатору удостоверения профиля.

+0

Возможно, вы добавили новую учетную запись udid? – viswateja

+0

Да, добавлено несколько новых UDID, так как я создал профиль adhoc и сертификат. Как или почему это влияет на вещи и есть ли что-нибудь, что я могу сделать, чтобы исправить ситуацию? – user278859

ответ

43

Ad-Hoc Provisioning Профили состоят из трех основных элементов:

  • Ровно 1 AppID
  • Публичный ключ вашего сертификата распределения
  • один или несколько зарегистрированных идентификаторов испытаний устройств

Когда вы впервые создали этот профиль Provisioning Profile (около года назад, если ваш текущий истекает в ближайшее время!), Вы дали ему указание использовать ваш текущий сертификат распространения при создании что профиль обеспечения - итоговая дата истечения срока действия Ad-Hoc Profile соответствует истечению срока действия сертификата распространения, поскольку вы не можете запустить приложение, подписанное с сертификатом с истекшим сроком действия (кроме этого: это не обязательно применяется в сценариях Jailbroken. ..)

Ваш главный вопрос: «Можно ли его исправить без отзыва?» является твердым «Нет». Даже если вы можете внести коррективы, скоро истекающий сертификат распространения приведет к тому, что вновь переизданный профиль Ad-Hoc будет иметь срок действия, соответствующий сертификату распространения. Вы вернетесь в ту же ситуацию через 14 дней, когда и ваш сертификат, и профиль Provisioning Profile истекли. К сожалению, в то время у вас также возникнет новая проблема, любые существующие сборки, которые у вас есть для ваших тестеров, больше не будут запущены по мере истечения срока действия сертификата подписи и профиля предоставления.

Вместо этого эти две недели - это ваша возможность проявить инициативу и перенаправить пользователей на новую сборку с новым сертификатом и профилем Provisioning Profile. С моими собственными тестерами я рассматриваю последние несколько недель моего текущего сертификата распространения в качестве окна миграции, чтобы переключить сборки и заставить мои тестеры загружать и устанавливать последнюю тестовую сборку, чтобы они могли продолжать тестирование. Отличная новость заключается в том, что вы поймали, что ваши сертификаты истекают с более чем достаточным временем, чтобы все выяснить и заставить ваши тестеры мигрировать - некоторым из них не очень повезло и им приходится играть в догонялки после того, как все истекло, и у них есть тестеры, которые кричат ​​о вашем сбое в работе приложения/больше не запускать ... определенно нежелательный результат для любого разработчика, особенно если вы являетесь магазином из одного человека и должны сами координировать как разработку, так и бета-тестер.

Так что же мне делать?

На высоком уровне выполнение миграции почти идентично настройке этого профиля Ad-Hoc в первый раз - просто требуется очистка старых данных от ваших брелоков и профилей Provisioning Profiles, а также отправка некоторых тестеров которые поощряют вашу команду к обновлению после того, как вы сделаете новую сборку доступной для них. На высоком уровне этот процесс выглядит следующим образом:

  1. Отмените существующий сертификат распространения и переиздайте новый сертификат распространения.
  2. Удалите существующий сертификат распространения из вашей брелка и установите новый.
  3. Обновите и установите профиль «Неверный» Ad-Hoc, чтобы использовать только что созданный сертификат распространения
  4. Обновить код.
  5. Постройте и опубликуйте свою Ad-Hoc для своих тестеров.

Подождите - не отменит ли мой существующий сертификат нарушить работу моих тестеров?

Нет, ни в коем случае! Ваши существующие Ad-Hoc-сборки будут продолжать работать отлично до истечения срока годности, потому что у них есть вся информация, необходимая для проверки подписи кода прямо внутри сборки Ad-Hoc, которую вы уже отправили. Как только сертификат истечет, однако тогда все не будет запущено, и у вас будут кричать тестеры на ваших руках.

Я предполагаю, что вы используете индивидуальную учетную запись, поэтому сертификаты появятся в формате «iPhone Developer: FirstName LastName» и «iPhone Distribution: FirstName LastName». Если вы используете учетную запись компании, формат будет немного отличаться. Я также предполагаю, что у вас есть только одна учетная запись; если вы зарегистрированы в нескольких учетных записях разработчиков, проявляйте особую осторожность при поиске и удалении существующих сертификатов и профилей из Keychain, так как может быть несколько похожих записей.

Чтобы начать, выйдите из Xcode, а затем перейдите к адресу developer.apple.com/ios в раздел «Сертификаты, идентификаторы & Профили». Ранее это было известно как «Центр обеспечения».

отменив и Переоформление сертификата распределения

  1. перейдите к области распределения сертификатов.
  2. Найдите свой сертификат распространения в ближайшее время до истечения срока действия и отмените его. Вы, скорее всего, столкнетесь с сообщением, информирующим вас о том, что аннулирование этого сертификата приведет к аннулированию любых связанных профилей подготовки, что вполне ожидаемо и ОК. На самом деле, это именно то, что мы хотим, чтобы это можно было обновить!
  3. Нажмите кнопку «Добавить» в верхнем правом углу и выполните шаги, чтобы создать новый сертификат распространения «App Store и Ad Hoc». Загрузите файл на свой компьютер, но не устанавливайте его еще - мы должны сначала очистить старый сертификат с вашей машины разработки.

Удаление отмененного сертификата и установка нового сертификата

  1. Открыть Keychain Access и поиск 'iPhone Distribution'.
  2. Удалите все синие сертификаты, соответствующие «Распределение iPhone». Значок сертификата может также показывать красный «X», указывающий, что он либо истек, либо аннулирован. Они могут быть очищены, так как они больше не используются.
  3. Дважды щелкните новый загруженный сертификат и установите его.

Редактировать Времнной Provisioning Профили

  1. Перейдите к Provisioning Profiles разделе распределения и найти свой Ad-Hoc профиля.
  2. При необходимости отредактируйте этот профиль, обновив список тестовых устройств.
  3. Нажмите «Создать и загрузить новый профиль Provisioning Profile». Если кнопка «Создать» отключена, убедитесь, что в имени профиля Provisioning нет специальных символов, и вы выбрали хотя бы одно тестовое устройство.
  4. Перетащите недавно загруженный профиль обеспечения на Xcode. Любые старые версии профиля могут быть удалены из Organizer.

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

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

+3

Брайан, какой фантастический, хорошо написанный ответ! Спасибо Спасибо. – user278859

+3

Брайан, просто хочу еще раз поблагодарить вас. Я просто выполнил ваши инструкции и обновил профиль Ad Hoc без проблем. Спасибо вам, хорошо поехать в год пыток. Джон – user278859

+1

Добро пожаловать - рад услышать, что вы снова и снова бежите. –

Смежные вопросы