我的应用程序中出现错误。我怀疑这与互联网连接速度慢有关,并且由于用户没有得到响应,他们一直在点击注册按钮。我会去查看数据库,发现同一封电子邮件有 12 个帐户同时注册。你们是怎么处理的?在 Firebase 登录/createAccount 方法完成之前,有什么方法可以做微调器吗?
最佳答案
首先将您的每个电子邮件地址一个帐户更改为是。
当您的用户按下按钮创建帐户时,您需要触发 createUser
但在此之前您需要禁用按钮本身以避免进一步调用具有相同详细信息的同一用户
func createMyUser(sender:UIButton!){
sender.isEnabled = false
FIRAuth.auth()?.createUser(withEmail: emailTextField.text!, password: passwordTextField.text!, completion: { (user, err) in
....
}
现在,如果您遇到任何错误,即使是网络错误也会使用 errorCodeNetworkError 处理该错误。并向用户显示出现网络错误的警报。
if let firebaseError = FIRAuthErrorCode(rawValue: err!._code) {
switch firebaseError{
case .errorCodeEmailAlreadyInUse : sender.isEnabled = true
break
case .errorCodeNetworkError : print("Network Error occured!")
sender.isEnabled = true
break
default : .....
}}
关于ios - 当我将它设置为每封电子邮件一个时,Firebase 创建多个帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40274014/