我尝试获取 userRecordID。在模拟器中它可以工作,但在我的 iPad 上却不行。在 iPad 上,我收到一个 CKErrorDomain"- 代码:9,这意味着 CKErrorNotAuthenticated,即使我之前在 iPad 设置中登录了 iCloud。那我错过了什么?我是否必须以编程方式注册某些内容或在 iPad 中打开某些内容设置?谢谢
if(self.usrRecordID == nil) {
CKContainer.defaultContainer().fetchUserRecordIDWithCompletionHandler({ userRecordID, error in
self.stopActivityIndicator()
if error != nil {
self.showMsg("Error...", vc: vc)
return
} else {
self.usrRecordID = userRecordID //USRID
}
})
}
最佳答案
执行方法之前:
CKContainer.defaultContainer().fetchUserRecordIDWithCompletionHandler({ userRecordID, error in
...
}
您应该调用该方法:
CKContainer.defaultContainer().accountStatusWithCompletionHandler({status, error in
NSLog("Account status = (status.hashValue) (0=CouldNotDetermine/1=Available/2=Restricted/3=NoAccount)")
})
响应应该是1,如果是3,那么你必须登录iCloud
关于ios - iPad 上的 CKErrorNotAuthenticated,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29575949/