Android studio FirebaseFirestore干扰FirebaseAuth.signout()

Android studio FirebaseFirestore干扰FirebaseAuth.signout(),android-studio,Android Studio,我正在创建一个具有注册和登录的应用程序。用户登录后,姓名等数据存储在firestore数据库中,然后获取并显示在导航抽屉标题上 ffstore = FirebaseFirestore.getInstance(); userAuth = FirebaseAuth.getInstance(); userId = userAuth.getCurrentUser().getUid(); DocumentReference document

我正在创建一个具有注册和登录的应用程序。用户登录后,姓名等数据存储在firestore数据库中,然后获取并显示在导航抽屉标题上

        ffstore = FirebaseFirestore.getInstance();
        userAuth = FirebaseAuth.getInstance();
        userId = userAuth.getCurrentUser().getUid();

        DocumentReference documentReference = ffstore.collection("users").document(userId);
        documentReference.addSnapshotListener(this, new EventListener<DocumentSnapshot>() {
            @Override
            public void onEvent(@Nullable DocumentSnapshot documentSnapshot, @Nullable FirebaseFirestoreException e) {
                if(documentSnapshot.getString("fName") != null) {
                    headerName.setText(documentSnapshot.getString("fName"));
                }else{
                    headerName.setText("User");
                }

            }
        });
每次我取下firestore获取数据代码时,注销按钮都能按预期完美工作。

修复

DocumentReference documentReference = ffstore.collection("users").document(userId);
        documentReference.addSnapshotListener(this, new EventListener<DocumentSnapshot>() {
            @Override
            public void onEvent(@Nullable DocumentSnapshot documentSnapshot, @Nullable FirebaseFirestoreException e) {
                if (userAuth.getCurrentUser() != null){
                    if (documentSnapshot.getString("fName") != null) {
                        headerName.setText(documentSnapshot.getString("fName"));
                    } else {
                        headerName.setText("User");
                    }
                } else {

                }

            }
        });
DocumentReference=ffstore.collection(“用户”).document(userId);
documentReference.addSnapshotListener(这个,新的EventListener(){
@凌驾
public void OneEvent(@Nullable DocumentSnapshot DocumentSnapshot,@Nullable FirebaseFirestoreException e){
if(userAuth.getCurrentUser()!=null){
if(documentSnapshot.getString(“fName”)!=null){
headerName.setText(documentSnapshot.getString(“fName”);
}否则{
headerName.setText(“用户”);
}
}否则{
}
}
});
DocumentReference documentReference = ffstore.collection("users").document(userId);
        documentReference.addSnapshotListener(this, new EventListener<DocumentSnapshot>() {
            @Override
            public void onEvent(@Nullable DocumentSnapshot documentSnapshot, @Nullable FirebaseFirestoreException e) {
                if (userAuth.getCurrentUser() != null){
                    if (documentSnapshot.getString("fName") != null) {
                        headerName.setText(documentSnapshot.getString("fName"));
                    } else {
                        headerName.setText("User");
                    }
                } else {

                }

            }
        });