Правильный способ обновления сертификата распространения для iOS

мой сертификат распространения истекает 7 июня вместе со всеми моими файлами подготовки. Как его правильно обновить? Должен ли я отменить его сейчас и запросить новый? Если я это сделаю, то все мои живые приложения будут сняты?

4 ответов


живые приложения не будут сняты. Ничего не случится с тем,что живет в app store.

Как только они официально истекают, единственное, что будет затронуто, - это ваша способность подписывать код (и, таким образом, создавать новые сборки и предоставлять обновления).

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

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

спокойствие заключается в том, что ничего не произойдет с вашим живым приложением в магазине.


когда срок действия сертификата истекает, он просто исчезает из раздела "сертификаты, идентификатор и профили" Центра участников. Нет кнопки "Обновить", которая позволяет обновить сертификат. вы можете отозвать сертификат и создать новый, прежде чем он истечет. Или вы можете подождать, пока он истечет и исчезнет, а затем создать новый сертификат. В руководство по распространению приложений Apple:

Замена Истек Сертификаты

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

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

Q: если я это сделаю, все мои живые приложения будут сняты?

приложения, которые уже находятся в App Store, продолжают нормально работать. раз, в руководство по распространению приложений Apple:

важно: повторное создание сертификатов разработки или распространения не влияет на приложения, которые вы отправили в магазин и не влияет на возможность обновления их.

Итак...

Q: Как правильно его обновить?

Как упоминалось выше, обновление сертификатов не происходит. Выполните следующие действия, чтобы отозвать и повторно создать новый сертификат, а также затронутые профили подготовки. Инструкции были обновлены для Xcode и Xcode 8.3 9.

Шаг 1: отозвать истекающий сертификат

логин Член Центра > сертификаты, Идентификаторы & профили, выберите истекающий сертификат. Обратите внимание на дату истечения срока действия сертификата, и нажмите кнопку ‘Отменить’.

Select the expiring certificate and click the Revoke button

Шаг 2: (необязательно) удалите отозванный сертификат из Связки ключей

дополнительно, если вы не хотите иметь отозванный сертификат, лежащий в вашей системе, вы можете удалить их из своей системы. К сожалению, функция " удалить сертификат’ в Xcode > Настройки > Учетные записи > [Apple ID] > управление сертификатами... кажется, всегда отключено, поэтому мы должны удалить их вручную с помощью Keychain Access.app (/приложения/утилиты / Keychain Access.приложение.)

Optionally remove the revoked certificate using Keychain Access.app

фильтр по категории "логин" брелки и "сертификаты". Найдите сертификат, который вы только что отозвали на Шаге 1.

в зависимости от сертификата, который вы только что отозвали, найдите " Mac " или "iPhone". Сертификаты распространения Mac App Store начните с" стороннего разработчика Mac", а сертификаты распространения iOS App Store начинаются с"распространения iPhone".

вы можете найти отозванный сертификат на основе имени команды, типа сертификата (Mac или iOS) и даты истечения срока действия сертификата, который вы отметили на Шаге 1.

Шаг 3: запросить новый сертификат с помощью Xcode

В разделе Xcode > Настройки > Учетные записи > [Apple ID] > управление сертификатами... нажмите кнопку " + " внизу слева и выберите тот же тип сертификата, который вы только что отозвали, чтобы Xcode запросил новый для вас.

Let Xcode request a new certificate for you in Xcode > Preferences > Accounts > Apple ID > Manage Certificates…

Шаг 4: обновите профили подготовки, чтобы использовать новый сертификат

после чего вернитесь в Член Центра > Сертификаты, Идентификаторы И Профили > Профили Подготовки > Все. Вы заметите, что любой профиль подготовки, который использовал отозванный сертификат, теперь отражается как ‘Недействительный.’

Notice that any provisioning profile that made use of the revoked certificate is now reflected as ‘Invalid’

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

Choose the newly created certificate, and click on Generate

Шаг 5: Используйте Xcode для загрузки новых профилей подготовки

Совет: перед загрузкой новых профилей с помощью Xcode, возможно, потребуется удалить все существующие и, возможно, недопустимые профили подготовки с компьютера Mac. Вы можете сделать это, удалив все профили от ~/Library/MobileDevice/Provisioning Profiles

Back in Xcode > Preferences > Accounts > [Apple ID], нажмите кнопку "Загрузить все профили", чтобы попросить Xcode загрузить все профили подготовки из вашей учетной записи разработчика.

Click Download All Profiles for Xcode to download all the newly generated profiles


очень просто было обновить сертификат. Перейдите в Центр разработчиков, перейдите в профиль подготовки и посмотрите, какие сертификаты активны и неактивны, выберите неактивный сертификат и нажмите кнопку Изменить, затем нажмите кнопку Создать. Теперь ваш сертификат успешно продлевается еще на 1 год. Спасибо


Это была действительно полезная тема, я следовал тем же шагам, что и @junjie, но для меня произошло что-то странное, ниже приведены шаги, которые я сделал.

  1. пошел на портал разработчика и отозвал сертификат, который должен был истечь.
  2. пошел в XCode6.4 и в настройках учетной записи сертификат все еще показывал действительность, я сошел с ума.
  3. затем я открыл XCode7, там сертификат был показан с "сброс" вместо создайте, и я нажал кнопку сброса, а позже на портале я смог увидеть расширенный сертификат. Это то, что Apple говорит о кнопке сброса

Если Xcode обнаруживает проблему с идентификатором подписи, он отображает соответствующие действия в настройках аккаунтов. Если Xcode отображает Create кнопка, удостоверение подписи не существует в центре участников или на вашем Мак. Если Xcode отображает кнопку сброса, идентификатор подписи не использовать на вашем Mac-для например, отсутствует закрытый ключ. Если вы нажмите кнопку сброса, Xcode отменяет и запрашивает соответствующий сертификат.

  1. Я попытался создать AppStore ipa с этим, просто чтобы проверить, и он работал нормально, поэтому я сохранен, но до сих пор не уверен, что произошло. Может быть, у меня было несколько учетных записей, настроенных на моем Mac, не знаю.