Heim >Java >javaLernprogramm >Wie kann der Benutzeranmeldestatus über App-Neustarts hinweg mithilfe der Firebase-Authentifizierung beibehalten werden?
Einmalige Anmeldung in der App mit FirebaseAuth
Problem:
Wie kann ich sicherstellen dass Benutzer nach dem Schließen und Neustarten einer App mit Firebase-Authentifizierung und ohne Implementierung einer Abmeldung angemeldet bleiben Funktion?
Lösung:
Die Lösung besteht darin, einen Listener zu nutzen, um den Authentifizierungsstatus des Benutzers zu überwachen. Dieser Listener leitet Benutzer automatisch zur entsprechenden Aktivität weiter, je nachdem, ob sie angemeldet sind oder nicht.
Implementierung:
1. Erstellen Sie das FirebaseAuth-Objekt:
FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();
2. Implementieren Sie den 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. Fangen Sie an, auf Veränderungen zu achten:
@Override protected void onStart() { super.onStart(); firebaseAuth.addAuthStateListener(authStateListener); } @Override protected void onStop() { super.onStop(); firebaseAuth.removeAuthStateListener(authStateListener); }
4. Platzieren Sie Listener in LoginActivity und MainActivity:
Wiederholen Sie die Schritte 2 und 3 sowohl in LoginActivity als auch in MainActivity, um eine ordnungsgemäße Handhabung der An- und Abmeldezustände sicherzustellen.
Das obige ist der detaillierte Inhalt vonWie kann der Benutzeranmeldestatus über App-Neustarts hinweg mithilfe der Firebase-Authentifizierung beibehalten werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!