无法查询用户CKRecords

时间:2014-12-05 19:38:29

标签: ios iphone cloudkit

公共数据库上使用此查询:

let pred = NSPredicate(format: "family == %@", ref)
let query = CKQuery(recordType: "Users", predicate: pred)

我没有得到任何结果,即使我在两个Users条记录上有这个引用关联。

即使我尝试:

let pred = NSPredicate(format: "TRUEPREDICATE")
let query = CKQuery(recordType: "Users", predicate: pred)

哪个应该返回所有Users条记录,我什么都没得到。虽然我知道Apple可能不想要后者,但是我也不能查询特定用户吗?

我已经搜索了文档,但目前有点缺乏,并且找不到任何关于此的条件。 Users是一个特殊的记录类型,所以答案可能就是“不,你不能查询用户”。

感谢。

1 个答案:

答案 0 :(得分:2)

用户记录明确无法查询。您必须使用CKDiscoverUserInfosOperationCKDiscoverAllContactsOperation-[CKContainer discoverUserInfo...]-[CKContainer discoverAllContactUserInfosWithCompletionHandler]来查找用户记录。

如果您需要查询用户的属性,您需要创建新的记录类型并将属性存储在那里。您可以在自定义记录上使用creatorUserRecordID将该值与用户相关联。