Когда обновляются профили при использовании "Автоматически управлять подписанием"/allowProvisioningUpdates?

У меня есть корпоративное распределенное приложение, которое построено на сервере сборки с помощью xcodebuild. В прошлом году мы внесли изменения в использование функции "Автоматическое управление подписью" с флагом "-allowProvisioningUpdates". Профиль профилирования создается с использованием этой техники, но мы получаем год с этим профилем и истекаем через 31 день.

Первоначально у меня создалось впечатление, что использование "allowProvisioningUpdates" приведет к тому, что профиль инициализации будет восстановлен в каждой новой сборке, но если это так, это не будет истекать. Нам нужно сделать новую сборку с обновленным профилем, чтобы наши пользователи не оставили сломанное приложение через несколько месяцев. Однако созданный профиль подготовки не отображается в разделе "Сертификаты, идентификаторы и профили" в Центре разработчиков Apple, и я не могу найти способ заставить Xcode или xcodebuild генерировать новый профиль подготовки. Как я могу заставить это случиться, чтобы не было времени для наших пользователей? Что произойдет, когда профиль окончательно истечет?

Ответ 1

Я связался с Apple, и вот что они должны были сказать:

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

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

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

Поэтому ответ кажется, что мы не должны использовать автоматическое подписание для внутреннего/корпоративного распределения, а вместо этого только для развертывания в App Store.

Ответ 2

Попробуйте вручную создать второй профиль подготовки на портале Dev, удалите старый профиль из сервера сборки. ~/Library/MobileDevice/Provisioning Profiles, загрузите и установите новый профиль.

Ответ 3

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