Есть ли способ использовать iCloud KeyValue Storage в общедоступном контейнере?

Я знаю, что могу использовать общедоступную базу данных CloudKit и создавать записи, совместно используемые всеми пользователями моего приложения. Но мне на самом деле нужна та же общедоступная база данных, но для KeyValueStorage. Что-то вроде общедоступных UserDefaults в iCloud. Является ли это возможным?

Мой магазин инициализируется так:

let keyValueStore = NSUbiquitousKeyValueStore.default

но это только для текущего пользовательского контейнера, а не для публичного.


person Bartłomiej Semańczyk    schedule 23.01.2021    source источник


Ответы (1)


Базы данных NSUbiquitousKeyValueStore и CloudKit совершенно не связаны между собой. (Помимо того, что они оба являются облачными хранилищами. :-)

Если вам нужно что-то вроде NSUbiquitousKeyValueStore в общедоступной базе данных CloudKit, вам нужно смоделировать это самостоятельно. Например, путем сериализации словаря в один объект данных и сохранения этого объекта или наличия типа записи (ключ, значение), который заполняется соответствующим образом.

person D. Mika    schedule 23.01.2021