firebaseを使用した電子メールの確認が固まっています。私はガイダンスのために見てきましたが、助けはありません。ユーザーが電子メールを確認した後も、自分のコードではまだユーザーが確認されていないことが表示されます。私はまだfirebaseの構文に慣れようとしています。ここに私のコードは次のとおりです。ここiOSでFirebaseを使用してユーザーのメールアドレスを確認するにはどうすればよいですか?
if FIRAuth.auth()?.currentUser!.emailVerified == true{
FIRAuth.auth()?.signInWithEmail(email.text!, password: passsword.text!, completion: {
user, error in
if error != nil{
print("Email/password is wrong or user does not exist")
}else{
print("Successful login.")
}
})
}else{
print("Please verify your email.")
}
は、サインアップセクションのための私のコードは次のとおりです。
let eduEmail = email.text
let endInEdu = eduEmail?.hasSuffix("my.utsa.edu")
if endInEdu == true {
FIRAuth.auth()?.createUserWithEmail(email.text!, password: passsword.text!, completion: {
user, error in
if error != nil{
let alert = UIAlertController(title: "User exists.", message: "Please use another email or sign in.", preferredStyle: UIAlertControllerStyle.Alert)
alert.addAction(UIAlertAction(title: "Ok", style: UIAlertActionStyle.Default, handler: nil))
self.presentViewController(alert, animated: true, completion: nil)
print("Email has been used, try a different one")
}else{
FIRAuth.auth()?.currentUser!.sendEmailVerificationWithCompletion({ (error) in
})
let alert = UIAlertController(title: "Account Created", message: "Please verify your email by confirming the sent link.", preferredStyle: UIAlertControllerStyle.Alert)
alert.addAction(UIAlertAction(title: "Ok", style: UIAlertActionStyle.Default, handler: nil))
self.presentViewController(alert, animated: true, completion: nil)
print("This is a college email and user is created")
}
})
}else{
print("This is not a my.utsa.edu email")
}
ちょっとイエス!ようこそstackoverflowへ。よりわかりやすい質問タイトルを設定することを強くお勧めします。 – adolfosrs
現在のユーザーでsendEmailVerificationを呼び出して、メールで送信された電子メールの確認リンクをクリックしていますか? – bojeil
はい私はそうです。サインアップビューのコントローラファイルにあります。サインアップすると、アカウントが作成されたときに電子メールが自動的に送信されます。 – jesusnieto5413