云工具包:如何仅从您的联系人组获取公共数据库订阅通知



我在公共数据库中有位置详细信息的CKRecord。我想为CKrecord创建一个订阅,该订阅包含位置详细信息,存储在公共数据库中。我想设置订阅,以便只从我的联系人组中收到通知。Location CKrecord上的订阅通知会通知我所有用户,这需要更多的时间进行排序,我希望避免这种情况。

如何设置订阅?

假设您的Location记录类型上有某种userEmail字段,您可以查询这些记录,如下所示:

let predicate = NSPredicate(format: "userEmail = %@", argumentArray: ["name@example.com"])

let query = CKQuery(recordType: "Location", predicate: predicate)
let operation = CKQueryOperation(query: query)

var records = [CKRecord]()
operation.recordFetchedBlock = { record in
records.append(record)
}
operation.queryCompletionBlock = { cursor, error in
print("Done.")
print(records)
}
CKContainer(identifier: "iCloud.yourContainer").publicCloudDatabase.add(operation)

最新更新