Подписка на запись изменений в sharedDB cloudkit
Похоже на то CKQuerySubscription
не может быть использован для подписки на изменения общей БД в облачном комплекте. CKDatabaseSubscription
не работает и не работает CKSubscription
Как мне добиться подписки на изменения Shared DB?
Просто. Как я могу получить уведомление об изменениях, внесенных в запись, которые мне поделились? Я НЕ ВЛАДЕЛЕЦ ЗАПИСИ.
Связанный вопрос здесь:
Как получать уведомления Cloudkit об изменениях, внесенных в записи поделился со мной?
2 ответа
Оказывается, невозможно подписаться на уровне зоны или уровне записи для Shared DB в CloudKit. Ссылка: https://developer.apple.com/library/content/qa/qa1917/_index.html
Be aware that CKQuerySubscription is not supported in the shared database, and
CKDatabaseSubscription currently only tracks the changes from custom zones in the private and shared database.
Некоторое время я изо всех сил пытался успешно подписаться, используя CKDatabaseSubscription, когда база данных была предоставлена мне. Это работало нормально, когда я был одним из них. Ошибка, которую я сделал, заключалась в том, что я использовал один и тот же идентификатор подписки в обоих случаях. Вам нужен уникальный идентификатор подписки, если вы хотите подписку на общую базу данных.