火力地堡。更改注册用户的“用户名”(电子邮件)

时间:2017-12-05 17:16:05

标签: firebase firebase-realtime-database firebase-authentication

我的iOS应用程序使用usernamepassword的Firebase登录。但我想提供更改username设置的可能性。

问题是,Firebase是否支持更改用户名?

更新

username表示email

2 个答案:

答案 0 :(得分:2)

如果您想更改displayName,可以使用以下代码:

let changeRequest = Auth.auth().currentUser?.createProfileChangeRequest()
changeRequest?.displayName = "DoesData"
changeRequest?.commitChanges { (error) in
  // ...
}

如果您想更改可以使用的电子邮件地址:

currentUser?.updateEmail(email) { error in
    if let error = error {
        print(error)
    } 
    else {
        // Email updated
    }
}

我知道如果您更新用​​户密码,则必须重新进行身份验证,但我不确定您是否还需要对电子邮件更改执行此操作。 此代码可以帮助进行身份验证:

let credential = FIREmailPasswordAuthProvider.credentialWithEmail(email, password: password)
let currentUser = FIRAuth.auth()?.currentUser

currentUser?.reauthenticateWithCredential(credential) { error in
   if let error = error {
       // An error happened.
   } else {
      // User re-authenticated.
   }
}

您可能还想查看documentationthis questionthis question

答案 1 :(得分:1)

我猜你在谈论电子邮件和密码验证方法。 您可以通过更新电子邮件({3}}来更改电子邮件(即用户名)。希望这有帮助!