我有这个代码。在使用FiresOnRecordCreation的触发模式创建订阅时有效...但在FiresOnce上出现错误..错误是"查询订阅必须至少有一种类型的触发模式"
我的目标是我有一张照片。当照片的第一个评级发生时,我想收到通知。我不想在引用上使用FiresOnRecordCreation,因为每个评级都会有一个太多的通知。我只想收到第一个评级的第一个通知。
let database = CKContainer.defaultContainer().publicCloudDatabase
let predicate = NSPredicate(format:"owningPhoto == %@", ref)
let subscription = CKSubscription(recordType: "PhotoRatings", predicate: predicate, options: .FiresOnce)
xcode在订阅时崩溃,但在FiresOnce上崩溃。
答案 0 :(得分:1)
除了.FireOnce之外,您还应该指出是否有创建,更新或删除的内容。所以电话应该是这样的:
let subscription = CKSubscription(recordType: "PhotoRatings", predicate: predicate, options: [.FiresOnce, .FiresOnRecordCreation, .FiresOnRecordUpdate, .FiresOnRecordDeletion])