1

在我的原生應用程序中,最初,用戶將是匿名的。稍後,他們將有機會與知名用戶一起登錄,但即使未登錄,我也希望在會話之間保留有關(匿名)用戶的數據。我怎樣才能做到這一點?我應該在本地存儲什麼以及如何將其作爲匿名用戶「重新認證」她?什麼以及如何存儲以保持用戶使用Firebase後端登錄到React本機應用程序?

匿名用戶

由於火力地堡最好僅限於經過驗證的用戶,我應該以某種方式能夠保持登錄,即使她是一個匿名用戶的用戶。

我知道每個用戶都有一個uid,我可以在Firebase之外的本地存儲它。我怎樣才能做到這一點?

身份驗證的用戶

我知道,在這種情況下,(1)火力試圖保持會話,(2)我可以保存憑證,如果需要在本地重新進行身份驗證。

基本問題

  • 我怎樣才能重新進行身份驗證的匿名用戶?是需要的還是火基地保持會議在這裏嗎?
  • 有沒有一種方法可以與firebase一起使用redux-persist來爲firebase外的每個用戶存儲uid和/或憑證?

技術堆棧

這是一個反應本機應用程序。 我打算使用https://invertase.io/react-native-firebase獲取Firebase支持,並且寧願使用redux-persist

回答

1

Firebase身份驗證通過AsyncStorage以反應本機方式持久保存用戶。爲了正確獲取用戶狀態,您需要收聽onAuthStateChanged監聽器:

// Call this function when app mounts 
firebase.auth().onAuthStateChanged(function(user) { 
    if (user) { 
    // currentUser should be non null. 
    } else { 
    // no user logged in. currentUser is null. 
    } 
}); 
相關問題