使用*
时,我没有收到回复。
这是在Xcode版本7.0 beta 4(7A165t)。
CKFetchRecordsOperation
我已经尝试了两种方法将操作添加到队列中:
import Cocoa
import CloudKit
// A record exists in the public container with this ID.
let recordIDs = [CKRecordID(recordName: "E175411C-58C9-4CF6-89AE-23E53289EE46")];
let fetchRecords = CKFetchRecordsOperation(recordIDs: recordIDs);
fetchRecords.fetchRecordsCompletionBlock = { (records:[CKRecordID: CKRecord]?, error:NSError?) -> Void in
// Code never reached
debugPrint("fetchRecordsCompletionBlock")
}
fetchRecords.perRecordCompletionBlock = { (record, recordID, error) -> Void in
// Code never reached.
debugPrint("perRecordCompletionBlock")
}
fetchRecords.perRecordProgressBlock = { (recordID, progress) -> Void in
// Code never reached.
debugPrint("perRecordProgressBlock")
}
fetchRecords.completionBlock = {
// Code never reached.
debugPrint("completionBlock")
}
let database = CKContainer.defaultContainer().publicCloudDatabase
fetchRecords.database = database
fetchRecords.start()
和
let database = CKContainer.defaultContainer().publicCloudDatabase
fetchRecords.database = database
fetchRecords.start()
我在控制台中没有活动,并且永远不会到达处理程序。
如果我像这样查询记录,我成功地得到了结果。
let database = CKContainer.defaultContainer().publicCloudDatabase
database.addOperation(fetchRecords)
但是,我有一个database.fetchRecordWithID(recordID) { (record:CKRecord?, error:NSError?) -> Void in
debugPrint("Result"); // The record here exists, and is as expected.
}
数组 - 因此我需要CKRecordID
才能工作。
答案 0 :(得分:0)
这似乎是Xcode 7 beta 4中的一个错误。
在Xcode版本7.0 beta 5(7A176x)中,它按预期工作。