CKQueryNotification
A CKQueryNotification объект представляет уведомление нажатия, сгенерированное объектом подписки. Объекты подписки представляют персистентные запросы на сервере. Когда сервер обнаруживает изменение, связанное с подпиской, он отправляет уведомление нажатия клиенту, создавшему подписку и регистрирующему уведомление нажатия в контейнере. Вы используете экземпляры этого класса для получения информации о записи, вовлеченной в уведомление нажатия.
Вы не создаете экземпляры этого класса непосредственно. Когда Ваше приложение получит уведомление нажатия, вызовите notificationFromRemoteNotificationDictionary: метод CKNotification генерировать объект уведомления надлежащего типа. Можно выбрать ранее зарегистрированные уведомления от контейнера с помощью a CKFetchNotificationChangesOperation объект. Если уведомление было инициировано вследствие объекта подписки, Вы получаете экземпляр этого класса с notificationType набор свойств к CKNotificationTypeQuery. Используйте тот объект получить связанную с записью информацию.
Если полезная нагрузка уведомления нажатия является слишком большой, части данных могут быть отброшены, пока это не находится под позволенным пределом размера. Данные, используемые для предупреждения пользователя, являются самыми важными и отбрасываются в последний раз. Значения данных в этом классе среди первого, которое будет отброшено со значениями, отбрасываемыми в следующем порядке:
containerIdentifier— определенный вCKNotificationкласс.Другие свойства
CKNotificationкласс.
Наследование
-
NSObject -
CKNotification -
CKQueryNotification
-
NSObject -
CKNotification -
CKQueryNotification
Оператор импорта
Swift
import CloudKit
Objective C
@import CloudKit;
Доступность
Доступный в OS X v10.10 и позже.
-
Событие, инициировавшее поставку уведомления нажатия. (только для чтения)
Объявление
Swift
var queryNotificationReason: CKQueryNotificationReason { get }Objective C
@property(nonatomic, readonly, assign) CKQueryNotificationReason queryNotificationReasonОбсуждение
Инициируемые в подписку уведомления инициированы созданием, удалением или обновлением единственной записи. Рассматриваемая запись должна соответствовать предикат, указанный объектом подписки для события, которое будет инициировано.
Оператор импорта
Objective C
@import CloudKit;Swift
import CloudKitДоступность
Доступный в OS X v10.10 и позже.
-
isPublicDatabase isPublicDatabaseСвойствоБулево значение, указывающее, является ли запись в общедоступной базе данных. (только для чтения)
Объявление
Swift
var isPublicDatabase: Bool { get }Objective C
@property(nonatomic, readonly, assign) BOOL isPublicDatabaseОбсуждение
Значение этого свойства
YEStrueесли запись находится в общедоступной базе данных, илиNOfalseесли это находится в частной базе данных текущего пользователя.Оператор импорта
Objective C
@import CloudKit;Swift
import CloudKitДоступность
Доступный в OS X v10.10 и позже.
-
Идентификатор записи, создававшейся, удалил или обновил. (только для чтения)
Объявление
Swift
@NSCopying var recordID: CKRecordID! { get }Objective C
@property(nonatomic, readonly, copy) CKRecordID *recordIDОбсуждение
Используйте этот идентификатор для выборки записи от контейнера. Проверьте значение
isPublicDatabaseсвойство для определения, который база данных выбрать его от.Оператор импорта
Objective C
@import CloudKit;Swift
import CloudKitДоступность
Доступный в OS X v10.10 и позже.
-
recordFields recordFieldsСвойствоСловарь изменившихся полей. (только для чтения)
Объявление
Swift
var recordFields: [NSObject : AnyObject]! { get }Objective C
@property(nonatomic, readonly, copy) NSDictionary *recordFieldsОбсуждение
Для обновленных и недавно создаваемых записей это свойство содержит желаемые ключи, которые требует объект подписки. Когда Вы конфигурируете
CKNotificationInfoобъект объекта подписки, можно указать имена одного или более полей вdesiredKeysсвойство того информационного объекта уведомления. Когда уведомление нажатия инициировано, значения для каждого из тех ключей получен от записи и включен в полезную нагрузку уведомления нажатия, разрешение пространства.Для объектов уведомления запроса, выбранных от контейнера, присутствуют все ключи и значения. Для объектов уведомления запроса, сгенерированных из входящего уведомления нажатия, могут отсутствовать один или несколько ключей и значения. Продвиньте полезные нагрузки уведомления, ограничиваются в размере и записывают поля, одна из первых частей данных, которые будут исключены, когда превышен тот предел размера. Для получения информации о порядке, в котором удалены поля, см. обзор этого класса.
Оператор импорта
Objective C
@import CloudKit;Swift
import CloudKitДоступность
Доступный в OS X v10.10 и позже.
-
Константы, указывающие событие, инициировавшее уведомление.
Объявление
Swift
enum CKQueryNotificationReason : Int { case RecordCreated case RecordUpdated case RecordDeleted }Objective C
typedef enum CKQueryNotificationReason : NSInteger { CKQueryNotificationReasonRecordCreated = 1, CKQueryNotificationReasonRecordUpdated, CKQueryNotificationReasonRecordDeleted, } CKQueryNotificationReason;Константы
-
RecordCreatedCKQueryNotificationReasonRecordCreatedЗапись, соответствующая предикат подписки, создавалась.
Доступный в OS X v10.10 и позже.
-
RecordUpdatedCKQueryNotificationReasonRecordUpdatedЗапись, соответствующая предикат подписки, была обновлена.
Доступный в OS X v10.10 и позже.
-
RecordDeletedCKQueryNotificationReasonRecordDeletedЗапись, соответствующая предикат подписки, была удалена.
Доступный в OS X v10.10 и позже.
Оператор импорта
Objective C
@import CloudKit;Swift
import CloudKitДоступность
Доступный в OS X v10.10 и позже.
-
