离开Parse并转移到Firebase后,我面临的一个问题是只能通过电子邮件和密码进行注册,我怎样才能让Firebase存储用户名呢?使用用户,电子邮件和密码进行Firebase注册
-3
A
回答
2
尝试......
FIRAuth.auth()?.createUser(withEmail: emailField.text!, password: passwordField.text!, completion: { (user: FIRUser?, error) in
if error != nil {
print(error)
return
} else {
print("User Created...") }
guard let uid = user?.uid else { return }
// You can set these values to whatever you want, plus add more!
let values = ["email": emailField.text!, "username": usernameField.text!] as [String : Any]
// Then pass your values into another function called 'RegisterUserIntoDatabase'
// which creates the user in your Firebase Database...
self.registerUserIntoDatabase(uid, values: values as [String : AnyObject])
})
private func registerUserIntoDatabase(_ uid: String, values: [String: AnyObject]) {
// Adding User Info
let ref = FIRDatabase.database().reference()
let usersReference = ref.child("users").child(uid)
usersReference.updateChildValues(values, withCompletionBlock: { (err, ref) in
if err != nil {
print(err)
return
}
print("Successfully Added a New User to the Database")
})
}
0
func handleRegister(email:String, password:String, username:String) {
//Create User
FIRAuth.auth()?.createUser(withEmail: email, password: password, completion: { (user, err) in
if err != nil {
print(err!.localizedDescription)
return
}
//Success! User Created!
if let userID = user?.uid {
//Create User Profile
let databaseRef = FIRDatabase.database().reference()
let usersRef = databaseRef.child("Users").child(userID)
let usernameValue = ["username":username]
usersRef.updateChildValues(usernameValue, withCompletionBlock: { (err, ref) in
if err != nil {
print(err!.localizedDescription)
return
}
//Profile created and updated!
//You can use perform segue or present controller to go to another controller...
})
}
})
}
+0
我应该如何调用该函数?谢谢你试图帮助爵士。 – Abdullah
+0
在注册/注册按钮动作中调用此函数。 –
相关问题
- 1. 使用电子邮件和密码重新验证Firebase用户
- 2. 如何使用Firebase使用电子邮件和密码进行简单登录
- 3. 使用Firebase注册电子邮件/密码时发生“网络错误”错误
- 4. 用电子邮件注册用户确认和验证码?
- 5. 用户注册电子邮件验证
- 6. 注册不带电子邮件地址的Firebase用户
- 7. 注册用户:验证码和确认电子邮件?
- 8. Javascript和Firebase 3 - 使用电子邮件和密码创建用户
- 9. Firebase密码注册不保存用户
- 10. 使用电子邮件和密码进行改造登录
- 11. Android Firebase使用电子邮件和密码登录
- 12. 用户注册的电子邮件密钥验证
- 13. Firebase Android - 在Kotlin中使用电子邮件和密码创建用户
- 14. AWS Cognito使用Firebase电子邮件和密码对用户进行身份验证IOS
- 15. 使用CakePHP更新用户电子邮件和密码
- 16. 禁用无密码 - 用户应使用电子邮件和密码登录
- 17. 防止用户使用相同的用户名和电子邮件注册
- 18. 如何使用angularfire2在电子邮件和密码注册时将数据添加到我的Firebase
- 19. 我怎么改变“用户名密码登陆”到“电子邮件地址和密码登录” Django的注册
- 20. 使用YII框架将用户注册电子邮件发送到用户的电子邮件收件箱
- 21. 注册网站用户和发送电子邮件
- 22. 用户注册,电子邮件验证和Ruby验证
- 23. 使用Firebase的用户名简单登录(电子邮件/密码)
- 24. Swift 3 Firebase用户认证/使用电子邮件密码登录数据库
- 25. 注册与Android应用程序的电子邮件ID和密码
- 26. Joomla电子邮件注册
- 27. FirebaseUI/Auth使用电子邮件密码
- 28. 注册时通过电子邮件发送密码
- 29. 忘记密码发送到Android的注册电子邮件
- 30. 禁用用户注册电子邮件在Joomla 3.5
见http://stackoverflow.com/q/32151178 –
我认为关于Android链接的问题举行会谈,这是同样的事情呢? @FrankvanPuffelen – Abdullah
Firebase SDK在不同平台上的工作原理相同。链接答案中的方法也适用于iOS。如果您在解决问题时遇到问题,请分享[重现您卡住的最小完整代码](http://stackoverflow.com/help/mcve)。 –