Log Masuk Sekali Dalam Apl Menggunakan FirebaseAuth
Masalah:
Bagaimana saya boleh memastikan bahawa pengguna kekal log masuk selepas menutup dan memulakan semula apl menggunakan pengesahan Firebase dan tanpa melaksanakan log keluar ciri?
Penyelesaian:
Penyelesaian melibatkan memanfaatkan pendengar untuk memantau keadaan pengesahan pengguna. Pendengar ini akan mengubah hala pengguna secara automatik ke aktiviti yang sesuai berdasarkan sama ada mereka log masuk atau tidak.
Pelaksanaan:
1. Cipta Objek FirebaseAuth:
FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();
2. Laksanakan AuthStateListener:
FirebaseAuth.AuthStateListener authStateListener = new FirebaseAuth.AuthStateListener() { @Override public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) { FirebaseUser firebaseUser = firebaseAuth.getCurrentUser(); if (firebaseUser != null) { // User is logged in Intent intent = new Intent(LoginActivity.this, MainActivity.class); startActivity(intent); finish(); } else { // User is not logged in Intent intent = new Intent(MainActivity.this, LoginActivity.class); startActivity(intent); } } };
3. Mula Mendengar Perubahan:
@Override protected void onStart() { super.onStart(); firebaseAuth.addAuthStateListener(authStateListener); } @Override protected void onStop() { super.onStop(); firebaseAuth.removeAuthStateListener(authStateListener); }
4. Letakkan Pendengar dalam Log Masuk danAktiviti Utama:
Ulang langkah 2 dan 3 dalam kedua-dua Log Masuk danAktiviti Utama untuk memastikan pengendalian yang betul bagi keadaan log masuk dan log keluar.
Atas ialah kandungan terperinci Bagaimana untuk Mengekalkan Keadaan Log Masuk Pengguna Sepanjang Apl Mulakan Semula Menggunakan Pengesahan Firebase?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!