🍎

swiftでFirebase Authのメールアドレス更新エラー

2024/01/27に公開

概要

SwiftでFirebase Authのメールアドレスを更新を失敗した人向けです。
私もどうしてなったので、備忘録的に書いています。

内容

user.updateEmailだけだと、「メールアドレスの更新に失敗しました: Please verify the new email before changing email.」になりました。

認証し直すようにしないといけなかったです。
下記のように認証確認メールを送信できるように修正しました〜

 // 現在のユーザーを取得
        if let user = Auth.auth().currentUser {
            // 新しいメールアドレスを設定
            user.updateEmail(to: newEmail) { (error) in
                if let error = error {
                    print("メールアドレスの更新に失敗しました: \(error.localizedDescription)")
                    // メールが新しいアドレスに送信されたことを通知
                    Auth.auth().currentUser?.sendEmailVerification(completion: { (error) in
                        if let error = error {
                            print("確認メールの送信に失敗しました: \(error.localizedDescription)")
                        } else {
                            print("確認メールが新しいメールアドレスに送信されました")
                        }
                    })
                } else {
                    print("メールアドレスが更新されました")
                }
            }
        } else {
            print("ユーザーがログインしていません")
        }

Discussion