我可以从CloudKit接收与CKQuery相对应的记录数吗?

时间:2014-10-31 08:20:22

标签: ios xcode cloudkit ckquery

我尝试使用CKQueryOperation:

CKQueryOperation *o = [[CKQueryOperation alloc] initWithQuery:query];
[o setDesiredKeys:@[]];

但它仍然会返回我目前不需要的大量数据

<CKRecord: 0x79881a50; recordType=Comment, recordID=CBB7B269-47AH-406E-8934-682D31501778:(_defaultZone:__defaultOwner__), recordChangeTag=i1x8j1ey, values={
}>
{
    creatorUserRecordID -> <CKRecordID: 0x7966e9d0; _e5b178bde573ba6fee336b9ed8:(_defaultZone:__defaultOwner__)>
    lastModifiedUserRecordID -> <CKRecordID: 0x7966cdd0; _e5b178bd3e9e7a6e336b9f34ed8:(_defaultZone:__defaultOwner__)>
    creationDate -> 2014-10-31 07:20:45 +0000
    modificationDate -> 2014-10-31 07:20:45 +0000
    modifiedByDevice -> iPhone Simulator
}

我只需要一些记录。

1 个答案:

答案 0 :(得分:4)

CloudKit中无法进行聚合查询。所以你必须查询所有记录并计算这些记录。要确保返回所有记录,必须将operation.resultsLimit设置为大于count的值,否则可能会发生并非返回所有记录。