Rumah > Java > javaTutorial > Bagaimana untuk Melaksanakan Log Masuk Satu Masa dengan Pengesahan Firebase dalam Android?

Bagaimana untuk Melaksanakan Log Masuk Satu Masa dengan Pengesahan Firebase dalam Android?

Patricia Arquette
Lepaskan: 2024-12-09 06:07:14
asal
475 orang telah melayarinya

How to Implement Single-Time Login with Firebase Authentication in Android?

Pelaksanaan Log Masuk Satu Masa dalam Apl dengan Pengesahan Firebase

Pengenalan:

Mencapai mekanisme log masuk sekali dalam apl menggunakan Firebase Authentication memastikan pengguna kekal log masuk walaupun selepas apl ditutup dan dibuka semula. Ini memudahkan pengalaman pengguna dan menghapuskan keperluan untuk skrin log masuk berulang.

Pelaksanaan:

Menggunakan FirebaseAuth AuthStateListener

Untuk melaksanakan log masuk sekali, FirebaseAuth AuthStateListener boleh digunakan. Pendengar ini memantau perubahan dalam keadaan pengesahan, membolehkan anda mengendalikan acara log masuk dan log keluar pengguna.

Aktiviti Log Masuk:

  1. Buat AuthStateListener:
FirebaseAuth.AuthStateListener authStateListener = new FirebaseAuth.AuthStateListener() {
    @Override
    public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
        FirebaseUser firebaseUser = firebaseAuth.getCurrentUser();
        if (firebaseUser != null) {
            // If user logged in, redirect to MainActivity
            // Remove current view to prevent re-displaying LoginActivity
            startActivity(new Intent(LoginActivity.this, MainActivity.class));
            finish();
        }
    }
};
Salin selepas log masuk
  1. Mula mendengar masuk onStart():
@Override
protected void onStart() {
    super.onStart();
    firebaseAuth.addAuthStateListener(authStateListener);
}
Salin selepas log masuk
Salin selepas log masuk

MainActivity:

  1. Cipta AuthStateListener:
FirebaseAuth.AuthStateListener authStateListener = new FirebaseAuth.AuthStateListener() {
    @Override
    public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
        FirebaseUser firebaseUser = firebaseAuth.getCurrentUser();
        if (firebaseUser == null) {
            // If user not logged in, redirect to LoginActivity
            // Remove background activity to ensure single-time login
            startActivity(new Intent(MainActivity.this, LoginActivity.class));
        }
    }
};
Salin selepas log masuk
  1. Mulakan mendengar onStart():
@Override
protected void onStart() {
    super.onStart();
    firebaseAuth.addAuthStateListener(authStateListener);
}
Salin selepas log masuk
Salin selepas log masuk
  1. Berhenti mendengar dalam onStop():
@Override
protected void onStop() {
    super.onStop();
    firebaseAuth.removeAuthStateListener(authStateListener);
}
Salin selepas log masuk

Nota:

  • Kedua-dua aktiviti memerlukan FirebaseAuth contoh:
FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();
Salin selepas log masuk
  • Dalam kedua-dua aktiviti, pengalihan keluar pendengar dalam onStop() memastikan pengurusan sumber yang betul.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Log Masuk Satu Masa dengan Pengesahan Firebase dalam Android?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan