gpt4 book ai didi

java - .getCurrentUser() 永远不会返回 null - firebase

转载 作者:行者123 更新时间:2023-11-30 05:30:38 25 4
gpt4 key购买 nike

我正在为我的应用程序创建 Facebook 身份验证,一切正常,除了当我退出 Facebook 时,它仍然会将我转到应用程序的主菜单。我认为这意味着即使我注销了 .getCurrentUser() 也不会返回 null。

我尝试注释掉 updateUI();在我下面的代码中,这似乎解决了问题,但是我希望这段代码能够正常工作

    FirebaseUser currentUser = mAuth.getCurrentUser();

if(currentUser != null) {
updateUI();
}

最佳答案

您需要附加一个 authstate 监听器。

“在某些情况下,getCurrentUser 将返回非空 FirebaseUser,但底层 token 无效。例如,如果用户在另一台设备上被删除并且本地 token 尚未刷新,则可能会发生这种情况。在此在这种情况下,您可能会获得有效的用户 getCurrentUser 但后续对经过身份验证的资源的调用将失败。

getCurrentUser 也可能返回 null,因为 auth 对象尚未完成初始化。

如果您附加 AuthStateListener,每次底层 token 状态发生变化时您都会收到回调。这对于对上述边缘情况使用react很有用。” https://firebase.google.com/docs/reference/android/com/google/firebase/auth/FirebaseAuth.AuthStateListener

https://firebase.google.com/docs/auth/android/manage-users

关于java - .getCurrentUser() 永远不会返回 null - firebase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57635684/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com