在使用 Firebase 進行身份驗證的行動應用程式中,確保無縫登入體驗至關重要。一個常見的需求是實現一種一次性登入機制,即使在關閉並重新啟動應用程式後也能保持使用者的登入狀態。
實作一次性登錄,我們可以利用 Firebase AuthStateListener。此監聽器監控使用者身份驗證狀態的變化並提供即時更新。
實作:
FirebaseAuth.AuthStateListener authStateListener = new FirebaseAuth.AuthStateListener() { @Override public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) { FirebaseUser firebaseUser = firebaseAuth.getCurrentUser(); } };
FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();
// LoginActivity firebaseAuth.addAuthStateListener(authStateListener); // MainActivity firebaseAuth.addAuthStateListener(authStateListener);
if (firebaseUser != null) { Intent intent = new Intent(LoginActivity.this, MainActivity.class); startActivity(intent); finish(); }
if (firebaseUser == null) { Intent intent = new Intent(MainActivity.this, LoginActivity.class); startActivity(intent); }
@Override protected void onStop() { super.onStop(); firebaseAuth.removeAuthStateListener(authStateListener); }
以上是如何使用 Firebase AuthStateListener 實作一次性登入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!