Какие существуют варианты для приложений для хранения данных в iCloud и какие из них видны из iCloud Manage Storage
Кажется, у приложения есть несколько разных способов хранения данных в iCloud (документы диска iCloud, базовые данные с синхронизацией iCloud, частные базы данных CloudKit, пары значений ключей и т. Д.), Но я не уверен, что это все. Какие из этих различных типов хранилищ iCloud отображаются для пользователя в меню "Управление хранилищем" iCloud (то есть некоторые приложения вообще не отображаются, в то время как другие отображают "Документы и данные", тогда как другие перечисляют файлы, которые можно по отдельности удалить, но не удалить " не появляется в iCloud Drive)? Я пытаюсь выяснить, но документация немного расплывчата по этому вопросу.
1 ответ
Аарон,
Существует три "принадлежащих Apple" места, где вы можете хранить данные для устройства iOS, на самом устройстве, на iCloud Drive и / или в базе данных iCloudKit.
В базе данных iCloudKit есть еще три места. Две из них являются базами данных в прямом смысле этого слова, поэтому структурированные области, в которых вы можете хранить информацию, а именно пары ключ / значение и CloudKit. База данных CloudKit сама разбивается на еще два принципиальных подразделения: общественные и частные.
Их доступность регулируется пользователем / приложением. Таким образом, вы, как разработчик, можете использовать или даже сделать ваши файлы доступными на них или нет. Правила, определяющие, кто может получить доступ к тому, что может сбивать с толку, особенно если они могут изменяться в разных версиях iOS.
ICloud Drive является наиболее и наименее гибким, вы можете хранить на нем все, но не можете делиться с ним ничего, кроме себя.
Далее идет база данных ключей / пар iCloud, за исключением того, что она используется исключительно приложением для хранения только состояния / предпочтений приложения [у него очень ограниченное пространство], опять же, вы можете поделиться им только с собой.
Далее следует база данных CloudKit, снова то, что будет использоваться в приложениях для каждого приложения. Таким образом, приложения не разделяют базы данных и не могут получить доступ к базам данных других приложений, если они не принадлежат одному и тому же автору, а совместное использование - это встроенная функциональность, которая была явно предназначена.
Тем не менее, база данных CloudKit имеет две отдельные области: частную и общедоступную. Доступ к приватной области может получить один пользователь приложения, доступ к публичной области может получить любой пользователь, использующий указанное приложение на любом устройстве iOS.
Документы CloudKit - это область, где Apple хранит документы, в основном, из своих приложений, например, заметок, страниц и номеров; хотя они открыли это несколько в последние годы. Они также могут быть доступны другим пользователям, используя одно из приложений, разработанных специально для хранения данных в области документов iCloudKit. Это самое близкое к Dropbox устройство под iOS, если не считать использования Dropbox, конечно.
Наконец, вы можете хранить данные на своем устройстве iOS и разрешить делиться ими с другими пользователями на том же устройстве через файловое приложение Apple, хотя это очень недавний статус-кво, поэтому он доступен только для приложений, специально предназначенных для работы под iOS 11. выбрал новый статус-кво.
Принимая во внимание все вышесказанное, Apple считает все места одним и тем же, когда дело доходит до ограничений хранилища, будьте осторожны, если вы хотите разработать / создать приложение с использованием облачного хранилища; если Apple посчитает, что вы сделали это безрассудно, вы не станете частью магазина приложений.
В качестве последнего комментария политики безопасности Apple разработаны в качестве общего правила, гарантирующего, что вы, как пользователь, имеете достаточно детальный контроль над тем, кто получает доступ к своим данным, это было / является намеренным решением с их стороны защитить вас от себя. Как правило, это работает хорошо; вот почему вы не видите почти никаких вирусов под iOS.