Рабочий процесс общего доступа CloudKit заканчивается следующим образом: Чтобы открыть его, вам понадобится последняя версия "имя_приложения"

Я пытаюсь создать CKShare на наборе CKRecords, используя CloudKit. Я сделал это через большую часть рабочего процесса:

  • создайте "root_record", который все общие записи будут идентифицировать как родительский
  • добавьте несколько записей и определите "root_record" как родительский
  • создайте CKShare для root_record и откройте диалоговое окно общего доступа с помощью UICloudSharingController
  • включить обязательный itemTitleForCloudSharingController & failedToSaveShareWithError
  • включить - (void) приложение:(UIApplication *) приложение userDidAcceptCloudKitShareWithMetadata: в appdelegate
  • нажал backgroundmodes > удаленное уведомление в возможностях

Я получаю диалог обмена на устройстве A, отправляю текстовое сообщение или отправляю электронное письмо на устройство B, как и ожидалось. На устройстве B я получаю:

Открыть "My_Title_String"? > Не сейчас | открыто

Но когда я выбираю "Открыть", я получаю:

Обновление "App_Name" | поделился этим Чтобы открыть его, вам понадобится последняя версия "имя_приложения". > Получил в App Store | Не сейчас

Я попытался увеличить номер сборки, удалив app + переустановить и установить из TestFlight, но я не могу заставить приложение вызываться на устройстве B, поэтому - (void) приложение:(UIApplication *) приложение userDidAcceptCloudKitShareWithMetadata: никогда не вызывается.

Любой совет, где я ошибся?

1 ответ

Я не включил запись CKSharingSupported в свой Info.plist.

Я не могу найти документацию этого флага нигде в документации Apple, но нашел ее в другом посте, и он добился цели. Надеюсь, это поможет кому-то сэкономить время.

Другие вопросы по тегам