Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios CloudKit FetchUserRecordId WithCompletionHandler完成代码未调用?_Ios_Swift_Icloud_Cloudkit_Completionhandler - Fatal编程技术网

Ios CloudKit FetchUserRecordId WithCompletionHandler完成代码未调用?

Ios CloudKit FetchUserRecordId WithCompletionHandler完成代码未调用?,ios,swift,icloud,cloudkit,completionhandler,Ios,Swift,Icloud,Cloudkit,Completionhandler,我正在尝试使用fetchUserRecordIDWithCompletionHandler从CloudKit获取当前用户ID,但是当我运行代码时,完成处理程序被跳过 let container = CKContainer.defaultContainer() let publicDatabase = container.publicCloudDatabase var userID: CKRecordID! container.fetchUserRecordIDWithCompletionHa

我正在尝试使用fetchUserRecordIDWithCompletionHandler从CloudKit获取当前用户ID,但是当我运行代码时,完成处理程序被跳过

let container = CKContainer.defaultContainer()
let publicDatabase = container.publicCloudDatabase

var userID: CKRecordID!

container.fetchUserRecordIDWithCompletionHandler( { recordID, error in
    if error == nil {
        userID = recordID

    } else {
        NSLog("\(error.localizedDescription)")
    }
})


let predicate = NSPredicate(format: "personID = \(userID)")

let query = CKQuery(recordType: "Person", predicate: predicate)

因此,userID的值保持为
nil
,因此查询会因此引发异常。

完成处理程序只会在fetch请求完成后运行,这将异步发生。因此,您不能在调用后立即使用fetch请求的结果。将该查询移动到的完成处理程序中,以转到代码的其他部分,这些部分可以调用或从处理程序中触发。

完成处理程序只会在获取请求完成后运行,这将异步进行。因此,您不能在调用后立即使用fetch请求的结果。将该查询移动到的完成处理程序中,以转到代码的其他部分,这些部分可以调用或从处理程序中触发。

完成处理程序只会在获取请求完成后运行,这将异步进行。因此,您不能在调用后立即使用fetch请求的结果。将该查询移动到的完成处理程序中,以转到代码的其他部分,这些部分可以调用或从处理程序中触发。

完成处理程序只会在获取请求完成后运行,这将异步进行。因此,您不能在调用后立即使用fetch请求的结果。将该查询移动到的完成处理程序中,以转到可以调用或从处理程序触发的代码的其他部分