cloudKit を使用して iOS アプリを作成しています。デバイスと cloudKit の間のデルタを取得する cloudKit でデータのバッチ フェッチを実行しようとしていますが、公開データベースでは CKFetchRecordChangesOperation が機能しないようです。私の唯一のオプションは、私のデータを取得するための CKQuery ですか? 例えば:
CKContainer *container = [CKContainer containerWithIdentifier:containerID];
CKDatabase *publicDatabase = [container publicCloudDatabase];
CKQuery *query = [[CKQuery alloc] initWithRecordType:recordType
predicate:[NSPredicate predicateWithFormat:@"TRUEPREDICATE"]];
CKQueryOperation *queryOp = [[CKQueryOperation alloc] initWithQuery:query];
queryOp.desiredKeys = @[@"record.recordID.recordName"];
queryOp.recordFetchedBlock = ^(CKRecord *record)
{
// do something...
};
queryOp.queryCompletionBlock = ^(CKQueryCursor *cursor, NSError *error)
{
// do something else...
};
queryOp.resultsLimit = CKQueryOperationMaximumResults;
[publicDatabase addOperation:queryOp];
よろしくお願いします。