Ich möchte den Post des Beitrags des Benutzers jemand ID folgen. Ich verwende FirebaseRecyclerAdapter, um Posts zu erhalten.Firebase erhalten Beitrag des folgenden Benutzers nur
meine Datenbank-ID-Struktur ist als unten json
"Allposts" : {
"-LnDkoPgr0fPAUSnackF" : {
"author" : "jack",
"postimage" : "posturl",
"profile" : "profileurl",
"uid" : "8WZ6jPIvVuNUEjR1G1ewEPpr2Ln2"
},
"-Lnll3vNF8wABv899SoQ" : {
"author" : "merry",
"postimage" : "posturl",
"profile" : "profileurl",
"uid" : "KOag2Br7MOaJqJNSFbcTD3ljEnh2"
}
"Users" : {
"8WZ6jPIvVuNUEjR1G1ewEPpr2Ln2" : {
"following" : {
"KOag2Br7MOaJqJNSFbcTD3ljEnh2" : true
},
"name" : "username",
"posts" : {
"-KnDkoPdke4p4Ns8NUkR" : true
},
"profilepic" : "profileurl",
"userName" : "username"
},
"KOag2Br7MOaJqJNSFbcTD3ljEnh2" : {
"following" : {
"8WZ6jPIvVuNUEjR1G1ewEPpr2Ln2" : true,
"KOag2Br7MOaJqJNSFbcTD3ljEnh2" : true
},
"name" : "name",
"posts" : {
"-KnDl3vFUlSxyRm0z547" : true
},
"profilepic" : "profileurl",
"userName" : "username"
}
},
"UsersPost" : {
"8WZ6jPIvVuNUEjR1G1ewEPpr2Ln2" : {
"-KnDkoPdke4p4Ns8NUkR" : {
"author" : "jack",
"full_url" : "posturl",
"profile" : "profileurl",
"uid" : "8WZ6jPIvVuNUEjR1G1ewEPpr2Ln2"
}
},
"KOag2Br7MOaJqJNSFbcTD3ljEnh2" : {
"-KnDl3vFUlSxyRm0z547" : {
"author" : "marry",
"full_url" : "posturl",
"profile" : profileurl",
"uid" : "KOag2Br7MOaJqJNSFbcTD3ljEnh2"
}
}
},
},
ich folgende Methode verwenden folgende Beiträge
mFollowing = FirebaseDatabase.getInstance().getReference().child("Users").child(currentUser).child("following");
mDatabase = FirebaseDatabase.getInstance().getReference().child("UsersPost");
protected void onStart() {
super.onStart();
mFollowing.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot following : dataSnapshot.getChildren()){
DatabaseReference ref = mDatabase.child(following.getKey());
mAdapter = new FirebaseRecyclerAdapter<Post, PostViewHolder>(Post.class,
R.layout.post_item,PostViewHolder.class,ref) {
@Override
protected void populateViewHolder(PostViewHolder viewHolder, Post model, int position) {
viewHolder.bindToPost(model);
}
};
mRecyclerView.setAdapter(mAdapter);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
}
Aber es zeigt den Posten des letzten Benutzers zu erhalten nur:
Users {
following {
userid (1)
userid (2)
userid (3)
}
}
Nur Post von uid 3 wird angezeigt post von uid 1 & 2 werden nicht angezeigt
was könnte getan werden, um Post aller Benutzer unter folgenden Knoten zu zeigen?
Jeder bitte geben Antwort ... –