ホームページ > Java > &#&チュートリアル > Firebase Authentication を使用してワンタイム電話番号ログインを実装するにはどうすればよいですか?

Firebase Authentication を使用してワンタイム電話番号ログインを実装するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-07 19:24:14
オリジナル
914 人が閲覧しました

How to Implement a One-Time Phone Number Login with Firebase Authentication?

Firebase 認証: 電話番号認証によるワンタイム ログインの実装

Firebase 認証では、署名したユーザーのワンタイム ログインを実現します電話番号経由でログインするには、アプリを閉じて再度開いた後でも永続的なログイン状態を維持する必要があります。これにより、ログアウト機能が不要になります。

解決策:

Firebase AuthStateListener を利用すると、この機能を効果的に確立できます。実装方法は次のとおりです。

  1. 認証状態リスナーを作成します。
FirebaseAuth.AuthStateListener authStateListener = new FirebaseAuth.AuthStateListener() {
    @Override
    public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
        FirebaseUser firebaseUser = firebaseAuth.getCurrentUser();
        if (firebaseUser != null) {
            // User is logged in, proceed to MainActivity
            Intent intent = new Intent(LoginActivity.this, MainActivity.class);
            startActivity(intent);
            finish();
        }
    }
};
ログイン後にコピー

このリスナーは、認証状態の変化を監視します。ユーザーがログインしている場合、MainActivity へのナビゲーションが開始されます。

  1. FirebaseAuth をインスタンス化し、リスナーを登録します:
FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();
firebaseAuth.addAuthStateListener(authStateListener);
ログイン後にコピー

FirebaseAuth をインスタンス化します。オブジェクトを取得し、onStart() で変更のリッスンを開始します。

  1. MainActivity に認証状態リスナーを実装します:

MainActivity で、ユーザーが認証されていない場合を処理する同様の AuthStateListener を作成します。ログインして、にリダイレクトします。 LoginActivity.

  1. アクティビティ一時停止時にリスナーを削除:

アクティビティが一時停止したら、不要なコールバックを避けるためにリスナーを削除します:

@Override
protected void onStop() {
    super.onStop();
    firebaseAuth.removeAuthStateListener(authStateListener);
}
ログイン後にコピー

次の手順に従うことで、携帯電話でサインインしたユーザーが確実に 1 回限りのログインを行うことができますFirebase Authentication を使用した番号。

以上がFirebase Authentication を使用してワンタイム電話番号ログインを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート