区分记录类型与iCloud发送的通知

时间:2016-01-20 04:10:49

标签: ios swift icloud cloudkit

我在区分哪种类型的记录具有创建,更新或删除方面存在问题。

我有两个CKSubscription用于不同类型的记录;狗和猫。

[String : AnyObject]看,没有任何方法可以区分狗或猫是否发生了什么事。

这样的东西会作为远程通知发送到应用程序。

["ck": {
    ce = 2;
    cid = "iCloud.com.xxx.yyy";
    nid = "xxx-xxx-xxx";
    qry =     {
        dbs = 2; // I don't know what this is, but it doesn't change
        fo = 3; // This indicates a deletion. 
        rid = "SomeManuallySetID";
        sid = "117DCFC3-F723-49F7-9F9D-A3D7463671F2";
        zid = "_defaultZone";
        zoid = "_defaultOwner";
    };
}]

有没有人能够在不再对iCloud进行查询的情况下这样做?

1 个答案:

答案 0 :(得分:2)

您首先从CKNotification获得NSNotification。然后在确定它是查询通知后,将其转换为CKQueryNotification。从那里你可以得到CKRecordID。使用它,您可以从CKRecord获取CKDatabase。获得CKRecord后,您可以使用recordType属性。