В приложении отсутствует требуемое право com.apple.developer.icloud-services '

Я использую общедоступную базу данных iCloud в своем приложении, которая отлично работает и находится в магазине.

При обновлении моего приложения до новой версии (с Xcode 7 на iOS9) я получаю сбой в строке:

CKContainer * container = [CKContainer containerWithIdentifier:@"iCloud.com.identifier"];

*** Terminating app due to uncaught exception 'CKException', reason: 'The application is missing required entitlement com.apple.developer.icloud-services'

Это происходит ТОЛЬКО первый запуск приложения после обновления, и только на iOS9. После этого первого (обновления) запуска приложения запускаются, и iCloud работает так, как ожидалось.

Я могу воссоздать крах последовательно, загрузив текущую версию хранилища приложения, а затем запустив обновленное приложение из Xcode 7.

Если я делаю то же самое (загружать производственное приложение и обновлять) с помощью iOS8, у меня нет такого же сбоя.

Я предполагаю, что это ошибка iOS9 или Xcode 7. Есть идеи?

ИЗМЕНИТЬ: Это действительно происходит при первом запуске приложения на iOS9, независимо от того, обновляю ли я или только сначала устанавливаю.

Ответ 1

Включение и выключение функции iCloud возможно исправлено.

Ответ 2

Переключение iCloud не помогло мне. Повторная установка приложения также не работала. Кажется, что проблема возникает, когда у меня есть точки останова. Если я отключу их, он будет работать без каких-либо проблем.

Ответ 3

Для меня переключением функции iCloud вкл/выкл был способ ее исправить, потому что после этого в файле прав создается новый ключ: "APS Environment" и его значение "production" или "deployment".

Ответ 4

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

Ответ 5

Для меня у меня были права доступа к коду, назначенные для моей целевой цели. Таким образом, приложение будет прекрасно работать. Но модульные тесты просто прекратили бы, несмотря ни на что. При очистке поля "Подписание подписи кода" из настроек сборки тестовой цели была устранена проблема. После. Многие. Часы.