![](/img/trans.png)
[英]How to retrieve a specific data from a node in Firebase Realtime Database using Android Studio?
[英]How to retrieve specific user from realtime Firebase in Android Studio
您好,我目前正在做咨詢師和用戶之間的約會聊天應用程序。
圖像是實時 Firebase 的屏幕截圖。 https://i.stack.imgur.com/kQG8x.png
所以我在輔導員接受用戶的預約后嘗試做聊天功能。 但是,就我而言,它會檢索所有輔導員信息,包括不接受預訂的輔導員。 每個顧問的屏幕截圖都出現在我的列表中。 我想只顯示“瑪麗”,因為她是唯一接受預約的人,但是根據圖片,它顯示了瑪麗和法拉。 如果有人可以幫助我,我將不勝感激。 謝謝你。
以下是顯示每個輔導員的代碼。
private void displayData(){
FirebaseUser firebaseUser = FirebaseAuth.getInstance().getCurrentUser();
DatabaseReference reference = FirebaseDatabase.getInstance().getReference("Counsellors");
reference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
//mUsers.clear();
for(DataSnapshot snapshot : dataSnapshot.getChildren()){
Counsellors counsellor = snapshot.getValue(Counsellors.class);
if (counsellor!=null && counsellor.getId()!= null && !counsellor.getId().equals(firebaseUser.getUid())){
mUsers.add(counsellor);
}
userAdapter = new UserAdapter(getContext(),mUsers);
recyclerView.setAdapter(userAdapter);
}
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
}
我的實時 Firebase 的 JSON 片段(約會、輔導員、用戶和聊天)
{ "Appointment" : { "-Mo69loW59iUHIMNfLOf" : { "date" : "11/26/21", "idDoctor" : "M8EUBl4vRubeW8iS92HiVIuY4rJ2", "idPatient" : "4WJh1MmoEfN4sqNaJrqbHhNFjxr1", "status" : "Accepted", "time" : "16:06" } }, "Chat" : { "-Mo6A8oY1Kt_ni71IlGN" : { "message" : "helo ", "receiver" : "4WJh1MmoEfN4sqNaJrqbHhNFjxr1", "sender" : "M8EUBl4vRubeW8iS92HiVIuY4rJ2" } }, "Counsellors" : { "M8EUBl4vRubeW8iS92HiVIuY4rJ2" : { "email" : "mary@gmail.com", "id" : "M8EUBl4vRubeW8iS92HiVIuY4rJ2", "name" : "mary", "specialist" : "family mental health" }, "v5FgbL4GuLeOE9ySVe7tgVFEk5D2" : { "email" : "farah24@gmail.com", "id" : "v5FgbL4GuLeOE9ySVe7tgVFEk5D2", "name" : "farah", "specialist" : "anxiety" } }, "Users" : { "4WJh1MmoEfN4sqNaJrqbHhNFjxr1" : { "email" : "jett24@gmail.com", "id" : "4WJh1MmoEfN4sqNaJrqbHhNFjxr1", "matric" : "BI18110293", "name" : "jett" } } }
首先,根據我使用 Firebase 的經驗,我建議您將所有數據從實時數據庫遷移到 Firestore 數據庫。 實時僅用於聊天目的。
這是這兩個數據庫之間區別的文檔: RTDB vs Firestore
第二件事是如果您需要幫助,請發布代碼片段以查看代碼是否有問題。 從文本中,我們無法幫助您在項目中進行修復。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.