我需要一种将 CKQueryNotification 连接到 CKRecord 或 CKSubscription 的方法,以便我可以接收多种记录类型的更新/插入/删除。我成功接收到 CKNotifications,这是有效载荷:
{
ck = {
ce = 2;
cid = "<my cloud container id>";
nid = "<unknown guid>";
qry = {
dbs = 2;
fo = 1;
rid = "<the record id>";
sid = "<THIS IS THE SUBSCRIPTION ID>";
zid = "_defaultZone";
zoid = "_defaultOwner";
};
};
}
我可以通过通知有效负载获取订阅 ID,并且可以将订阅 ID 绑定到知道记录类型的本地缓存,但我想使用 CKFetchNotificationChangesOperation 来检索未读通知,此时我只有一个 CKQueryNotification 对象.
CKQueryNotification 对象只有一个 CKRecordID,据我所知,我无法从 CKRecordID 中获取 CKRecord。我可以对容器中的所有 CKRecord->recordType 执行查询,但这似乎不对。
任何帮助表示赞赏!