Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека Разработчика iOS

Разработчик

Ссылка платформы CloudKit ссылка класса CKRecord

Опции
Развертывание Target:

На этой странице
Язык:

CKRecord

Наследование


Оператор импорта


Swift

import CloudKit

Objective C

@import CloudKit;

Доступность


Доступный в iOS 8.0 и позже.

A CKRecord объект является словарем пар ключ/значение, которые Вы используете, чтобы выбрать и сохранить данные Вашего приложения. Записи являются фундаментальными объектами, которые что Вы используете для управления данными в CloudKit. Можно определить любое число типов записи для приложения с каждым типом записи, соответствующим другому типу информации, в которой Вы нуждаетесь. В данном типе записи Вы тогда определяете одно или более полей, каждое из которых имеет имя и значение данных. Записи могут содержать простые типы данных, такие как строки и числа или более составные типы, такие как географические местоположения или указатели на другие записи.

Важный шаг в использовании CloudKit определяет типы записи Ваши поддержки приложений. Каждый новый рекордный объект не содержит ключей или значений первоначально. Во время разработки можно добавить новые ключи и значения в любое время. В первый раз Вы устанавливаете значение для ключа и сохраняете запись, партнеры сервера, вводящие с ключом для всех записей того же типа. ( CKRecord класс не осуществляет эти ограничения типа или делает любую локальную проверку содержания записи; те ограничения осуществляются сервером при сохранении записей.)

Несмотря на то, что действие записей как словари, существуют все еще ограничения к типам значений, можно присвоиться к ключам. Таблица 1 перечисляет типы объектов что CKRecord поддержки класса. Попытка указать объекты любого другого типа является ошибкой программиста и перестанет работать. Поля всех типов доступны для поиска, если не указано иное.

Табличные 1Data типы, поддерживаемые в CKRecord поля.

Тип данных

Примечания

NSString

Используйте строки для хранения относительно мелких сумм текста. Несмотря на то, что сами строки могут быть любой длиной, необходимо использовать актив для хранения больших сумм текста.

NSNumber

Используйте числа, чтобы хранить любую числовую информацию, включая целые числа и числа с плавающей точкой.

NSData

Используйте объекты данных сохранить произвольные байты данных. Типичное использование для объектов данных должно отобразить байты, которые они содержат к a struct. Не используйте объекты данных для того, чтобы хранить большие файлы двоичных данных; используйте актив вместо этого. Поля данных не доступны для поиска.

NSDate

Используйте объекты даты хранить информацию дня и времени в доступной форме.

NSArray

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

CLLocation

Используйте объект расположения хранить географические координатные данные. Вы используете расположения в сочетании с Базовой платформой Расположения или с любыми другими службами та информация о расположении дескриптора.

CKAsset

Используйте объект актива связать находящийся на диске файл с записью. Активы глубоко связываются к записям, но управляются отдельно. Для получения дополнительной информации об использовании активов см. Ссылку класса CKAsset.

CKReference

Используйте ссылочный объект создать ссылку к связанной записи. Ссылка хранит ID целевой записи. Преимущество использования ссылки вместо того, чтобы хранить ID как строку состоит в том, что ссылки могут инициировать каскадные удаления зависимых записей. Недостаток - то, что ссылки могут только соединиться между записями в той же рекордной зоне. Для получения дополнительной информации см. Ссылку класса CKReference

Взаимодействие с записями

Вы взаимодействуете с записями следующим образом:

  • Определите типы записи, представляющие Ваши данные.

  • Создайте записи и используйте их для сохранения информации к серверу.

  • Выберите существующие записи от базы данных и используйте их для заполнения локальных структур данных.

  • Получите и установите значения полей.

Процесс для определения Ваших типов записи зависит полностью от Вашего приложения и данных, которые Вы пытаетесь представлять. Лучше разрабатывать записи, инкапсулирующие данные для одной единицы информации. Например, Вы могли бы использовать один тип записи, чтобы сохранить имя сотрудника, должность и дату, найма, и использовать отдельный тип записи для хранения адресной информации. Используя различные типы записи позволяет Вам управлять, управлять и проверить два типа информации отдельно. Используйте поля, содержащие CKReference объекты установить отношения между различными типами записей. После определения типов записи используйте Инструментальную панель iCloud для установки типов записи. Во время разработки можно также создать новые типы записи программно.

Создание новой записи

Когда Вы создаете новый CKRecord объекты, укажите строку, соответствующую имени типа записи. Эта строка становится типом записи после того и не может быть изменена.

  • // Create a new record of type "employee".
  • CKRecord* myRecord = [[CKRecord alloc] initWithRecordType:@"employee"];

Новые записи существуют только в памяти, пока Вы явно не сохраняете их к iCloud. Кроме того, новые записи редки по умолчанию и не имеют никаких значений, присвоенных полям, которые Вы определили. (Фактически, пока Вы не устанавливаете значение ключа явно, получать значение ключа в новой записи возвращается nil.) Даже при том, что запись имеет связанный тип, та информация о типе проигнорирована, пока Вы не сохраняете запись.

Получение и установка полей

Вы получаете доступ к полям a CKRecord возразите тому же способу, которым Вы получаете доступ к парам ключ/значение в NSMutableDictionary. CKRecord класс определяет objectForKey: и setObject:forKey: методы для получения и установки значений. Это также поддерживает индексную нотацию словаря. Следующий пример показывает, как использовать оба метода для установки названного поля firstName и назовите поле lastName от данной записи.

  • // Equivalent ways to set a value.
  • [myRecord setObject:@"Jacob" forKey:@"firstName"];
  • myRecord[@"firstName"] = @"Jacob";
  • // Equivalent ways to get a value.
  • id value = [myRecord objectForKey:@"lastName"];
  • value = myRecord[@"lastName"];

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

Выборка существующей записи

Для получения записи, ID которой Вы уже знаете используйте a CKFetchRecordsOperation возразите или fetchRecordWithID:completion: метод CKDatabase. Оба метода выбирают запись асинхронно и вызывают Ваш обработчик завершения или с результатами или с ошибкой.

Для получения записи, ID которой Вы не знаете сконфигурируйте a CKQuery объект с поисковыми параметрами для Вашей записи и затем выполняет тот запрос с помощью aCKQueryOperation объект. Запросы ищут записи, поля которых соответствуют критерии, которые Вы указываете. Запрос содержит выражение предиката, должен был соответствовать значение в поле со значением, которое Вы ищете. Предикат может относиться к полям записи (включая поля метаданных) по имени. В случае полей метаданных используйте имя соответствующего свойства непосредственно в Вашем запросе. Например, для поиска записей их датой создания Вы создали бы предикат, соответствующий значения против»creationDate” поле.

Сохранение записи

Для сохранения записи на сервер используйте a CKModifyRecordsOperation возразите или saveRecord:completion: метод CKDatabase. Оба метода сохраняют запись и ее содержание асинхронно и вызывают Ваш обработчик завершения с результатами или ошибкой.

Для новых записей Вы не обязаны присваивать значения каждому полю записи прежде, чем сохранить его. Пакеты CloudKit данные, присутствующие в записи и отправляющие ее в сервер. Поля с nil значения не занимают дополнительное место на сервере и могут быть установлены в любое время позже.

Индексация полей записи

Индексы позволяют искать содержание Ваших записей эффективно. Во время разработки сервер индексирует все поля, типы данных которых могут использоваться в предикате запроса. Это автоматическое индексирование упрощает экспериментировать с запросами во время разработки, но эти индексы занимают место в базе данных и занимают время, чтобы генерировать и поддержать. Таким образом, при миграции на продуктивную среду, удалите индексы для любых полей, которые Вы фактически не используете в запросах.

Для управления поведением индексации записей в продуктивной среде используйте Инструментальную панель CloudKit. При миграции схемы от среды разработки до продуктивной среды позвольте индексировать только для полей, которые приложение использует в запросах, и отключите его для всех других полей.

Настройка записей

CKRecord класс не поддерживает специальных настроек и не должен быть разделен на подклассы. Используйте этот класс как есть для управления данными, прибывающими из или идущими в сервер.

  • Инициализирует и возвращает новую запись указанного типа.

    Объявление

    Swift

    init!(recordType recordType: String!)

    Objective C

    - (instancetype)initWithRecordType:(NSString *)recordType

    Параметры

    recordType

    Строка, отражающая тип записи, которую Вы хотите создать. Вы определяете типы записи, которые Ваши поддержки приложений и используют их для различения между записями с различными типами данных. Этот параметр не должен быть nil или содержите пустую строку.

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

    Возвращаемое значение

    Инициализированный рекордный объект или nil если не может быть создана запись.

    Обсуждение

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

    После создания рекордные объекты существуют только в памяти на локальном устройстве. Сохраните запись с помощью a CKModifyRecordsOperation объект или использование saveRecord:completion: метод CKDatabase передать содержание записи серверу.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Инициализирует и возвращает запись в указанной зоне.

    Объявление

    Swift

    init!(recordType recordType: String!, zoneID zoneID: CKRecordZoneID!)

    Objective C

    - (instancetype)initWithRecordType:(NSString *)recordType zoneID:(CKRecordZoneID *)zoneID

    Параметры

    recordType

    Строка, отражающая тип записи, которую Вы хотите создать. Определите типы записи, которые Ваши поддержки приложений, и используют их для различения между записями с различными типами данных. Этот параметр не должен быть nil или содержите пустую строку.

    Имена типа записи состоят из одного или более алфавитно-цифровых символов и запускаются с буквы. Имена типов могут включать символы подчеркивания, если они не запускают с того символа. Пробелы не позволяются на имена типа записи.

    zoneID

    ID рекордной зоны, в которую можно поместить запись.

    Возвращаемое значение

    Инициализированный рекордный объект или nil если не может быть создана запись.

    Обсуждение

    Используйте этот метод для инициализации нового рекордного объекта в указанной рекордной зоне. Недавно создаваемая запись не содержит данных ни в одном из его полей и присваивается уникальный идентификатор.

    После создания рекордные объекты существуют только в памяти на локальном устройстве. Сохраните запись с помощью a CKModifyRecordsOperation объект или использование saveRecord:completion: метод CKDatabase передать содержание записи серверу.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Инициализирует и возвращает запись с помощью ID, который Вы обеспечиваете.

    Объявление

    Swift

    init!(recordType recordType: String!, recordID recordID: CKRecordID!)

    Objective C

    - (instancetype)initWithRecordType:(NSString *)recordType recordID:(CKRecordID *)recordID

    Параметры

    recordType

    Строка, отражающая тип записи, которую Вы хотите создать. Определите типы записи, которые Ваши поддержки приложений, и используют их для различения между записями с различными типами данных. Этот параметр не должен быть nil или содержите пустую строку.

    Имена типа записи состоят из одного или более алфавитно-цифровых символов и запускаются с буквы. Имена типов могут включать символы подчеркивания, если они не запускают с того символа. Пробелы не позволяются на имена типа записи.

    recordID

    ID для присвоения к самой записи. При создании ID можно указать зону, в которую можно поместить запись. ID не может в настоящее время использоваться никакой другой записью и не должен быть nil.

    Возвращаемое значение

    Инициализированный рекордный объект или nil если не может быть создана запись.

    Обсуждение

    Используйте этот метод для инициализации нового рекордного объекта с указанным ID. Недавно создаваемая запись не содержит данных.

    После создания рекордные объекты существуют только в памяти на локальном устройстве. Сохраните запись с помощью a CKModifyRecordsOperation объект или использование saveRecord:completion: метод CKDatabase передать содержание записи серверу.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Возвращает значение для данного ключа, сохраненного в записи.

    Объявление

    Swift

    func objectForKey(_ key: String!) -> AnyObject!

    Objective C

    - (id)objectForKey:(NSString *)key

    Параметры

    key

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

    Возвращаемое значение

    Объект связался с указанным ключом или nil если никакой такой ключ не существует в записи.

    Обсуждение

    Новые записи не содержат ключей или значений первоначально. Значения всегда являются одними из типов объектов, перечисленных в Таблице 1.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Устанавливает значение для указанного ключа.

    Объявление

    Swift

    func setObject(_ obj: CKRecordValue!, forKey key: String!)

    Objective C

    - (void)setObject:(id<CKRecordValue>)obj forKey:(NSString *)key

    Параметры

    obj

    Значение для присвоения к указанному key. Объект должен быть одним из типов, перечисленных в Таблице 1. Это - ошибка программиста указать объект любого другого типа. Указать nil для этого параметра для удаления значения для поля.

    key

    Ключ для соединения с obj. Используйте этот ключ для получения значения позже. Ключевые имена состоят из одного или более алфавитно-цифровых символов и запускаются с буквы. Если Вы не используете подчеркивание в качестве первого символа на имя, можно также включать символы подчеркивания. Пробелы не позволяются на ключевые имена. Имена Ваших ключей не должны соответствовать имена никаких свойств этого класса.

    Обсуждение

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

    Если тип obj параметр отличается от типа объекта, в настоящее время экономил на сервере, Вы встретитесь с ошибкой, когда Вы попытаетесь сохранить эту запись на сервер. Например, если текущая стоимость NSString объект, Вы получите ошибку при изменении значения на NSNumber возразите и сохраните запись.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

    См. также

    – objectForKey:

  • Возвращает значение для данного ключа, сохраненного в записи.

    Объявление

    Swift

    func objectForKeyedSubscript(_ key: String!) -> AnyObject!

    Objective C

    - (id)objectForKeyedSubscript:(NSString *)key

    Параметры

    key

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

    Возвращаемое значение

    Значение связалось с указанным ключом или nil если никакой такой ключ не существует в записи.

    Обсуждение

    Не вызывайте этот метод непосредственно. Присутствие этого метода требуется, чтобы поддерживать синтаксис преобразования в нижний индекс для рекордных объектов. Для получения значения от записи с помощью этого синтаксиса используйте код, подобный следующему:

    • id value = myRecord[@"firstName"];

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Добавляет указанная пара ключ/значение к записи.

    Объявление

    Swift

    func setObject(_ obj: CKRecordValue!, forKeyedSubscript key: String!)

    Objective C

    - (void)setObject:(id<CKRecordValue>)obj forKeyedSubscript:(NSString *)key

    Параметры

    obj

    Значение для присвоения к указанному key. Объект должен быть одним из типов, перечисленных в Таблице 1. Это - ошибка программиста указать объект любого другого типа. Указать nil для этого параметра для удаления значения для поля.

    key

    Ключ для соединения с obj. Используйте этот ключ для получения значения позже. Ключевые имена состоят из одного или более алфавитно-цифровых символов и запускаются с буквы. Если Вы не используете подчеркивание в качестве первого символа на имя, можно также включать символы подчеркивания. Пробелы не позволяются на ключевые имена. Имена Ваших ключей не должны соответствовать имена никаких свойств этого класса.

    Обсуждение

    Не вызывайте этот метод непосредственно. Присутствие этого метода требуется, чтобы поддерживать синтаксис преобразования в нижний индекс для рекордных объектов. Для присвоения значения ключу в записи с помощью этого синтаксиса используйте код, подобный следующему:

    • myRecord[@"firstName"] = @"John";

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Возвращает массив строк, соответствующих всем ключам в настоящее время в записи.

    Объявление

    Swift

    func allKeys() -> [AnyObject]!

    Objective C

    - (NSArray *)allKeys

    Возвращаемое значение

    Массив NSString объекты. Возвращенный массив содержит только ключи, имеющие соответствующие значения в записи. Если никакие ключи не устанавливаются для записи, этот метод возвращает пустой массив.

    Обсуждение

    Этот метод может не возвратить все возможные ключи в записи. В частности метод не делает клавиш Return, значения которых nil.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Возвращает массив строк, представляющих ключи, недавно изменившиеся.

    Объявление

    Swift

    func changedKeys() -> [AnyObject]!

    Objective C

    - (NSArray *)changedKeys

    Возвращаемое значение

    Массив NSString объекты, каждый из которых представляет ключ, значение которого изменилось начиная с записи, были загружены или сохранены. Если никакие ключи не изменились, этот метод возвращает пустой массив.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • recordID Свойство

    Уникальный идентификатор записи. (только для чтения)

    Объявление

    Swift

    @NSCopying var recordID: CKRecordID! { get }

    Objective C

    @property(nonatomic, readonly, copy) CKRecordID *recordID

    Обсуждение

    Во время инициализации всегда устанавливается ID новой записи. Если Вы используете initWithRecordType:recordID: метод для инициализации записи ID получен из CKRecordID объект Вы обеспечиваете. Во всех других случаях запись генерирует UUID и базирует его ID на том значении. ID записи никогда не переключает время жизни той записи.

    При сохранении нового рекордного объекта к серверу сервер проверяет уникальность записи, но сообщает об ошибке, только если политика сохранения требует его. В частности, когда политика сохранения установлена в, это сообщает об ошибке CKRecordSaveIfServerRecordUnchanged, который является значением по умолчанию. Для других политик сохранения сервер перезаписывает содержание существующей записи соответственно.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • recordType Свойство

    Определенная с помощью приложения строка, идентифицирующая тип записи. (только для чтения)

    Объявление

    Swift

    var recordType: String! { get }

    Objective C

    @property(nonatomic, readonly, copy) NSString *recordType

    Обсуждение

    Используйте эту строку для дифференциации между различными типами записи в приложении. Строка прежде всего для Вашего преимущества, поэтому выберите имена типов, отражающие данные в соответствующих записях.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • creationDate Свойство

    Время, когда запись была сначала сохранена к серверу. (только для чтения)

    Объявление

    Swift

    @NSCopying var creationDate: NSDate! { get }

    Objective C

    @property(nonatomic, readonly, copy) NSDate *creationDate

    Обсуждение

    Дата создания отражает время, в которое запись с ID текущей записи создавалась на сервере. Для новых экземпляров этого класса значение этого свойства первоначально установлено в nil. При сохранении записи на сервер значение обновляется с надлежащей датой создания для записи.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

    См. также

    creatorUserRecordID

  • creatorUserRecordID Свойство

    ID пользователя, создавшего запись. (только для чтения)

    Объявление

    Swift

    @NSCopying var creatorUserRecordID: CKRecordID! { get }

    Objective C

    @property(nonatomic, readonly, copy) CKRecordID *creatorUserRecordID

    Обсуждение

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

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • modificationDate Свойство

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

    Объявление

    Swift

    @NSCopying var modificationDate: NSDate! { get }

    Objective C

    @property(nonatomic, readonly, copy) NSDate *modificationDate

    Обсуждение

    Дата модификации отражает время, в которое запись с ID текущей записи была в последний раз сохранена к серверу. Для новых экземпляров этого класса значение этого свойства первоначально установлено в nil. При сохранении записи на сервер значение обновляется с надлежащей датой модификации записи.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • lastModifiedUserRecordID Свойство

    ID пользователя, кто продержался, изменил запись. (только для чтения)

    Объявление

    Swift

    @NSCopying var lastModifiedUserRecordID: CKRecordID! { get }

    Objective C

    @property(nonatomic, readonly, copy) CKRecordID *lastModifiedUserRecordID

    Обсуждение

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

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • recordChangeTag Свойство

    Строка, содержащая сервер, изменяет маркер для записи. (только для чтения)

    Объявление

    Swift

    var recordChangeTag: String! { get }

    Objective C

    @property(nonatomic, readonly, copy) NSString *recordChangeTag

    Обсуждение

    При выборке записи от сервера Вы получаете текущую версию той записи, поскольку это существует на сервере. Однако в любое время после выборки записи другие пользователи могли бы сохранить более новую версию записи на сервер. Каждый раз, когда запись сохраняется, сервер обновляет маркер изменения записи к новому значению. При сохранении экземпляра записи на сервер сервер сравнивает маркер в записи с маркером на сервере. Если эти два маркера соответствуют, сервер знает об изменении последней версии записи и что изменения могут быть применены сразу же. Если эти два маркера не соответствуют, сервер применяет политику сохранения Ваше приложение, указанное, чтобы определить, как продолжить.

    В Вашем собственном коде можно использовать маркеры изменения для различения две различных версии той же записи.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Возвращает массив строк, которые можно использовать для полнотекстовых поисков основанных на операция со строками значений поля.

    Объявление

    Swift

    func allTokens() -> [AnyObject]!

    Objective C

    - (NSArray *)allTokens

    Возвращаемое значение

    Массив NSString объекты, содержащие данные от записей основанные на операция со строками поля.

    Обсуждение

    При выполнении собственных полнотекстовых поисков можно использовать этот метод для получения списка строк для поиска. Метод действует только на ключи, значения которых NSString объекты. Это повреждает каждую строку значения независимо на пробельных границах, создает новые строки для каждого слова, добавляет новые строки к массиву и возвращает массив. Эта маркируемая версия строковых значений записи упрощает делать основанные на операция со строками сравнения отдельных слов.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Кодирует системные поля записи с помощью указанного archiver.

    Объявление

    Swift

    func encodeSystemFieldsWithCoder(_ coder: NSCoder!)

    Objective C

    - (void)encodeSystemFieldsWithCoder:(NSCoder *)coder

    Параметры

    coder

    Объект archiver.

    Обсуждение

    Используйте этот метод для кодирования только предоставленных системой метаданных, связанных с записью. Каждая запись определила с помощью системы ключи, соответствующие метаданным, таким как рекордный ID, тип записи, дата создания, и т.д. Метод кодирует те определенные с помощью системы, вводит указанный archiver. Этот метод не указывает ключей, которые Вы добавили к записи. Это также не кодирует ключи, возвращенные changedKeys метод.

    Вы могли бы использовать этот метод, когда Вы хотите сохранить только системные метаданные, потому что фактические рекордные данные хранятся в другом месте.

    Оператор импорта

    Objective C

    @import CloudKit;

    Swift

    import CloudKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Постоянный, который идентифицирует специальный тип записи.

    Объявление

    Swift

    let CKRecordTypeUserRecord: String

    Objective C

    NSString * const CKRecordTypeUserRecord;

    Константы

    • CKRecordTypeUserRecord

      Тип записи для пользовательских записей.

      CloudKit автоматически создает пользовательскую запись для каждого уникального пользователя приложения. Пользовательские записи пусты первоначально. Можно добавить данные к пользовательской записи использование тех же правил, запрашивающих все записи. В частности тип данных, хранивших для определенного имени поля, должен быть тем же во всех пользовательских записях. Однако Вы не можете создать новые пользовательские записи с помощью этого типа записи, и Вы не можете запросить для записей этого типа. Для определения местоположения пользовательских записей необходимо знать, что ID пользователя записывает или использует CKContainer интерфейсы для обнаружения пользовательских записей.

      Доступный в iOS 8.0 и позже.