2

我正在使用 Firebase 匿名身份验证。

如果用户已从 Firebase 控制台中删除,客户端仍然认为该用户存在,因为它仍然持有令牌。

每次启动应用程序时,我都想验证用户是否仍然存在。我发现我可以使用该FirebaseUser.reload()功能。

该文档说,如果用户的帐户已被禁用或删除,FirebaseAuthInvalidUserException将被抛出: https://firebase.google.com/docs/reference/android/com/google/firebase/auth/FirebaseUser.html#reload( )

然而,这是一个异步函数,我正在努力寻找如何捕获这个异常。任何人都可以向我展示如何捕获此异常的代码示例吗?我查看了所有文档,但没有找到关于此的示例。

4

1 回答 1

3

尝试这个:

mFirebaseUser.reload().addOnFailureListener(new OnFailureListener() {
    @Override
    public void onFailure(@NonNull Exception e) {
        if (e instanceof FirebaseAuthInvalidUserException) {
            Log.d(TheApp.LOG_TAG, "user doesn't exist anymore");
            createUser();
        }
    }
});
于 2017-08-03T14:03:18.403 回答