0
実際に私はここで2つのことを試しています: - 新しいアカウントを作成しようとして、ログイン後に "email already exists error"と表示されています。UserInfo = {NSLocalizedDescription =電子メールアドレスはすでに別のアカウントで使用されていますが、error_name = ERROR_EMAIL_ALREADY_IN_USE}
CreateAcccountButton(_送信者:ANYOBJECT)FUNC @IBAction
における{(ユーザー、エラー):{guard let eventInterest = textBox.text,let email = EmailTestfield.text, let password = PasswordTestfield.text, let name = UsernameTestfield.text else {
print("Form is not valid")
return
}
Auth.auth()のcreateUser(withEmail:電子メール、パスワード:パスワード、完了
if let error = error {
print(error)
return
}
guard let uid = user?.uid else {
return
}
//successfully authenticated user
let imageName = UUID().uuidString
let storageRef = Storage.storage().reference().child("profile_images").child("\(imageName).png")
if let uploadData = UIImagePNGRepresentation(self.Profilepicture.image!) {
storageRef.putData(uploadData, metadata: nil, completion: { (metadata, error) in
if let error = error {
print(error)
return
}
print (metadata)
// let downloadURL = metadata?.downloadURL()
// print("fuckin URL ", downloadURL)
if let Profilepictureurl = metadata?.downloadURL()?.absoluteString {
let values = ["name": name, "email": email,"EventInterest":eventInterest,"Password":password,"Profilepictureurl": Profilepictureurl ]
let user = User(dictionary: values as [String : AnyObject])
let customViewController = MessagesController()
customViewController.setupNavBarWithUser(user)
customViewController.fetchUserAndSetupNavBarTitle()
// customViewController.navigationItem.title = values["name"] as? String
self.dismiss(animated: true, completion: nil)
self.registeruserintoDb(uid,values: values as [String : AnyObject])
}
})
}
}
)
}
fileprivate func registeruserintoDb(_ uid: String, values: [String: AnyObject]) {
let ref = Database.database().reference()
let usersReference = ref.child("users").child(uid)
usersReference.updateChildValues(values, withCompletionBlock: { (err, ref) in
if err != nil {
print(err!)
return
}
})
}
。その代わり、
auth.signIn
methodを使用してcurrently signed in usersを確認してください。あなたはすでにその電子メールでユーザーを持って、エラーが言うまさにだが、私は使用することができますauth.SignIn私は両方のことをやってみたいと思う:アカウントの作成とサインイン。 –私の更新された回答を参照してください。現在のユーザーがnullであるかどうかを確認します。 – SUPERCILEX