2016-08-08 66 views
0

Ich versuche, einen Datensatz zu speichern, den ich im CloudKit-Dashboard gemacht habe.Speichern von Datensatz in CloudKit funktioniert nicht [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 { 

     } 

Und ich bin ziemlich sicher, dass mein Code in Ordnung ist. (CloudKit Framework ist definitiv richtig importiert und CloudKit ist ordnungsgemäß mit gültigem Entwicklerkonto und Container aktiviert, kein Problem). Allerdings bekomme ich eine Fehlermeldung, dass ich einen autorisierten Account habe, wenn ich diesen Code ausprobiere. Andere ähnliche Fragen scheinen jedoch gelöst worden zu sein, indem Sie sicher gestellt haben, dass Sie in iCloud am Simulator angemeldet sind (ich benutze Xcode 8), jedoch habe ich überprüft und überprüft, dass ich bei iCloud angemeldet bin, also habe ich keine Idee, was das Problem ist. Wie kann ich das umgehen? Hat es etwas mit meinem Code zu tun?

+0

Können Sie die tatsächliche Fehlermeldung anzeigen? –

+0

@grimfrog Hier ist RufusV

Antwort

1

Ihr Code sieht gut aus. Es hat mit der Authentifizierung zu tun.

Verwenden Sie ein neues iCloud-Testkonto oder Ihr Entwicklerkonto? Wenn es sich um ein brandneues Konto handelt, würde ich versuchen, mich zuerst über iCloud.com in einem Browser einzuloggen.

Eine andere Option könnte sein, den Simulator (Reset Content and Settings) zurückzusetzen und iCloud erneut in Settings > iCloud einzurichten.