小编Pat*_*ejo的帖子

firebaseAuth.getCurrentUser()返回null DisplayName

当我使用我的Google帐户登录并使用getDisplayName()获取名称时,我的名称显示正确,但在AuthStateListener中则没有.

这是我的代码的一部分:

private void handleSignInResult(GoogleSignInResult result) {

    Alert.dismissProgress();

    if (result.isSuccess()) {
        GoogleSignInAccount acct = result.getSignInAccount();

        if(acct != null) {
            Log.i("NAME", acct.getDisplayName()); <-- RETURN MY NAME CORRECTLY
            credential = GoogleAuthProvider.getCredential(acct.getIdToken(), null);
            fuser.linkWithCredential(credential).addOnCompleteListener(authResult);                    
        } else {
            //ERROR
        }

    } else {
        //ERROR
    }
}
Run Code Online (Sandbox Code Playgroud)

但是在我的AuthStateListener中

@Override
    public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
        FirebaseUser nuser = firebaseAuth.getCurrentUser();

        if (nuser != null) {

            Log.i("NAME", nuser.getDisplayName()); <--- RETURN NULL 
        }
    }
Run Code Online (Sandbox Code Playgroud)

有人知道为什么会这样吗?

android firebase firebase-authentication

11
推荐指数
3
解决办法
1万
查看次数