Сохранение записи в CloudKit не работает [Swift 3]

Я пытаюсь сохранить запись, которую я сделал, в панели управления CloudKit.

@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 правильно включен с действующей учетной записью разработчика и контейнером, проблем нет) Однако я получаю сообщение об ошибке, говорящее, что у меня есть авторизованная учетная запись, когда я пытаюсь запустить этот код. Однако другие подобные вопросы, казалось, были решены, убедившись, что вы вошли в iCloud на симуляторе (я использую Xcode 8), однако я проверил и дважды проверил, что я вошел в iCloud, поэтому у меня нет Идея в чем проблема. Как я могу обойти это. Это как-то связано с моим кодом?

1 ответ

Ваш код выглядит хорошо. Это связано с аутентификацией.

Вы используете новую тестовую учетную запись iCloud или свою учетную запись разработчика? Если это новая учетная запись, я бы сначала попытался войти в браузер через iCloud.com.

Другим вариантом может быть сброс симулятора (Reset Content and Settings) и снова настройте iCloud в Settings > iCloud,

Другие вопросы по тегам