Swift 为什么CKFetchRecords操作不起作用?

Swift 为什么CKFetchRecords操作不起作用?,swift,cloudkit,Swift,Cloudkit,此操作不检索任何内容。未调用CkFetchRecordsCOmpletion块?谢谢你的时间 public func getRecord(recordID: CKRecord.ID, completion: @escaping (CKRecord?, CKError?) -> Void) { let operation = CKFetchRecordsOperation(recordIDs: [recordID]) operation.fetchRecordsComplet

此操作不检索任何内容。未调用CkFetchRecordsCOmpletion块?谢谢你的时间

public func getRecord(recordID: CKRecord.ID, completion: @escaping (CKRecord?, CKError?) -> Void) {
    let operation = CKFetchRecordsOperation(recordIDs: [recordID])
    operation.fetchRecordsCompletionBlock = { (records, error) in
        // Checking for potential errors
        if let error = error {
            completion(nil, error as? CKError)
            print(error)
        }

        if let record = records?[recordID] {
            completion(record, nil)
        }
    }

    operation.qualityOfService = .utility
    let privateDatabase = CKContainer(identifier: "something").privateCloudDatabase
    privateDatabase.add(operation)
}

我将您的代码复制到我的应用程序中(并将数据库更改为我自己的),代码运行得非常好。您有一些与代码无关的错误。好的,谢谢。然后我会再试一次,看看它是如何工作的!