1

我用:

CKModifyRecordsOperation *cKModifyRecordsOperation = [[CKModifyRecordsOperation alloc] initWithRecordsToSave:recordsToAddOrSave recordIDsToDelete:recordsIDsToDelete];
cKModifyRecordsOperation.savePolicy = CKRecordSaveChangedKeys;
cKModifyRecordsOperation.modifyRecordsCompletionBlock = ^( NSArray *savedRecords, NSArray *deletedRecordIDs, NSError *error ) {
  if ( error )
  {
      NSLog(error.description);
  }

虽然这适用于某些记录类型,但对于特定的记录类型,我现在收到以下错误消息:

CKError 0x170844bc0:“无效参数”(12)

这很奇怪,因为它以前有效,即使对于这种记录类型也是如此。

我检查了论坛并进行了 Google 搜索,但在CKModifyRecordsOperation.

4

2 回答 2

0

万一有人发现自己和我在同一个地方,当我使用类似的代码时,在要修改的记录数组中传递 CKRecordID 而不是 CKRecord 时,我收到了相同的错误代码。

也许这也是你的问题?

于 2015-09-01T18:29:19.273 回答
0

我不是 100% 确定这一点,但这是我在文档中找到的ChangedKeys

A policy that saves only those fields of the record that actually changed, overwriting any values currently on the server. Unmodified fields are left untouched.

对我来说,这听起来像是该键仅用于修改记录,而不是删除它们。

于 2015-08-17T13:12:19.147 回答