Java 尝试查询我的Firestore数据库以检索字段=当前用户userUID的结果

Java 尝试查询我的Firestore数据库以检索字段=当前用户userUID的结果,java,android,firebase,google-cloud-firestore,Java,Android,Firebase,Google Cloud Firestore,我试图查询我的google Firestore数据库,以检索userUID字段=当前用户的数据。据我所知,我已经对userUID进行了硬编码,尽管这对于任何登录的用户都必须更改为唯一的。我的代码如下: public void viewMyAttendance(View v) { attendanceRef3.whereEqualTo("userUID", "rJe547HwBrWFWa90zVdUl6PYfo03")//("userUID", FirebaseAuth.getIn

我试图查询我的google Firestore数据库,以检索
userUID
字段=当前用户的数据。据我所知,我已经对
userUID
进行了硬编码,尽管这对于任何登录的用户都必须更改为唯一的。我的代码如下:

   public void viewMyAttendance(View v) {

    attendanceRef3.whereEqualTo("userUID", "rJe547HwBrWFWa90zVdUl6PYfo03")//("userUID", FirebaseAuth.getInstance().getCurrentUser())
            .get().addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {
        @Override
        public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
            String data = "";

            for (QueryDocumentSnapshot documentSnapshot : queryDocumentSnapshots) {
                Attendance attendance = documentSnapshot.toObject(Attendance.class);
                //attendance.setDocumentID(documentSnapshot.getId());

                //Session session = documentSnapshot.toObject(Session.class);

                String sessionID = attendance.getSessionID();
                String studentID = attendance.getUserUID();
                //String documentID = session.getDocumentID();

                data += "Session ID: " + sessionID + "\n" + "User UID: " + studentID + "\n\n";
            }
            textViewData.setText(data);
        }
    });
}
public void viewMyAttention(视图v){
AttendanceEF3.whereEqualTo(“userUID”,“rJe547HwBrWFWa90zVdUl6PYfo03”)/(“userUID”,FirebaseAuth.getInstance().getCurrentUser())
.get().addOnSuccessListener(新的OnSuccessListener()){
@凌驾
成功时公共无效(QuerySnapshot QueryDocumentSnapshot){
字符串数据=”;
用于(QueryDocumentSnapshot文档快照:QueryDocumentSnapshot){
考勤考勤=documentSnapshot.toObject(考勤.class);
//attention.setDocumentID(documentSnapshot.getId());
//Session Session=documentSnapshot.toObject(Session.class);
字符串sessionID=attention.getSessionID();
String studentID=attention.getUserUID();
//字符串documentID=session.getDocumentID();
数据+=“会话ID:“+sessionID+”\n“+”用户UID:“+studentID+”\n\n”;
}
textViewData.setText(数据);
}
});
}

目前,我有一个用户的userUID硬编码,我想为每个登录的用户更改它

要解决此问题,您需要使用,以便从
FirebaseUser
对象获取
uid
,如下所示:

String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();

这里的问题是什么?目前我有一个用户的userUID硬编码,我希望对每个登录的用户都进行更改,以便userUID field=当前用户的userUID,而不是我硬编码的userUID inIt。看起来您已经注释掉了使用Firebase Auth获取UID的代码。使用UID时会出现什么错误?字符串uid=auth.getInstance().getCurrentUser().getUid()@SeanGallagherWorks很好,很抱歉去度假了,只是更新了答案,谢谢