iPad 上的 CKErrorNotAuthenticated

CKErrorNotAuthenticated on iPad

我尝试获取 userRecordID。在模拟器中它可以工作,但在我的 iPad 上不行。在 iPad 上,我得到一个 CKErrorDomain" - 代码:9,这意味着 CKErrorNotAuthenticated 即使我之前在 iPad-Settings 中登录了 iCloud。那我错过了什么?我是否必须以编程方式注册一些东西或者在 iPad 设置中打开 sthg?谢谢

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