2016-08-08 65 views
0

我試圖保存我在CloudKit儀表板中創建的記錄。在CloudKit中保存記錄無法正常工作[Swift 3]

@IBAction func signUpPressed(_ sender: AnyObject) { 

    let authInfo = AuthInfo() 

    authInfo.email = emailField.text! 
    authInfo.firstName = firstField.text! 
    authInfo.lastName = lastField.text! 
    authInfo.username = usernameField.text! 
    authInfo.password = passwordField.text! 

    let container = CKContainer.default() 
    let privateData = container.privateCloudDatabase 

    let record = CKRecord(recordType: "Authentication") 
    record.setValue(authInfo.email, forKey: "email") 
    record.setValue(authInfo.username, forKey: "username") 
    record.setValue(authInfo.firstName, forKey: "firstName") 
    record.setValue(authInfo.lastName, forKey: "lastName") 
    record.setValue(authInfo.password, forKey: "password") 
    privateData.save(record, completionHandler: { record, error in 
     if error != nil { 
      print(error) 

     } else { 

     } 

而且,我敢肯定,我的代碼是好的。 (CloudKit框架無疑是正確導入的,並且CloudKit已通過有效的開發人員帳戶和容器正確啓用,但沒有問題)但是,當我嘗試運行此代碼時,出現錯誤,說明我有一個授權帳戶。然而,其他類似的問題似乎已經通過確保您在模擬器(我使用Xcode 8)上登錄到iCloud來解決,但是我已經檢查並且仔細檢查了我是否登錄到了iCloud,因此我沒有想法是什麼問題。我怎樣才能解決這個問題。它實際上是與我的代碼有關嗎?

+0

你能顯示實際的錯誤信息嗎? –

+0

@grimfrog這是 RufusV

回答

1

你的代碼看起來不錯。它與身份驗證有關。

您使用的是新的iCloud測試帳戶還是您的開發者帳戶?如果它是一個全新的帳戶,我會嘗試首先通過iCloud.com在瀏覽器中登錄。

另一個選項可能是重置模擬器(Reset Content and Settings)並再次在Settings > iCloud中設置iCloud。