Потенциальная потеря доступа к цепочке для ключей после переноса приложения в iOS
Наше приложение для iOS - это перенос из учетной записи A в B. Ранее мы использовали сертификаты, созданные в учетной записи A, и загружали сборку в iTunes Connect с использованием сертификатов учетной записи A.
Теперь, когда мы загружали приложение в iTunesconenct для бета-тестирования, мы использовали сертификаты, созданные в учетной записи B(в связи с переносом учетной записи приложения).
Итак, теперь идентификатор приложения реального приложения отличается от идентификатора приложения Beta TestFlight Testing App в App Store. И у нас есть предупреждение о потенциальной потере доступа к брелку.
Прямо сейчас мы используем SSKeychain Wrapper для Store UUID для отслеживания пользователя. [SSKeychain setPassword: UUID forService: @ "com.example.appname" account:@ "appname" error:&error]
Если префикс ID приложения изменился, то SSKeychain потерял доступ?
Потому что мы отслеживаем UUID в базе данных для дальнейшего использования с помощью SSKeychain. Я сомневаюсь, что если префикс APPID изменился, то это также влияет на SSKeychain и генерирует новый UUID для всех устройств?
Итак, как мы можем решить эту проблему? Пожалуйста, дайте нам знать о решениях этой проблемы.
1 ответ
Доступ к цепочке для ключей привязан к префиксу (ам) ID приложения. Они должны иметь одинаковый префикс. У нас был случай, когда разные приложения в одной и той же учетной записи разработчика и разные префиксы не могли использовать один и тот же доступ к цепочке ключей. Нужно было починить Apple, чтобы все было одинаково.
В вашем случае, если вы переместите приложение в учетную запись B, идентификатор приложения будет иметь другой префикс и не сможет получить доступ к "старой" цепочке для ключей.
Насколько я знаю, НЕТ никакого обходного пути для этого, если префикс приложения изменился.
Да, все устройства получат новое хранилище ключей для данных и не смогут получить доступ к "старым" данным цепочки ключей.