所以我试图创建一个显示组中当前成员的回收站视图。下面我有我的数据库的图片,基本上我有一个groupId,它是创建者的uid,并且我们有3个用户和一些其他不相关的数据。
问题是我不知道如何获取特定的uid以便我可以获得他们的个人资料信息
groupsDatabase = FirebaseDatabase.getInstance().getReference().child("Groups").child(groupUid);
我也使用像这样设置的dynamicLinks
private void attachParameter(){
Uri link = Uri.parse("https://y95rt.app.goo.gl/Lesn")
.buildUpon()
.appendQueryParameter("groupUid", groupUid)
.build();
generateDynamicLink(link.toString());
}
private void generateDynamicLink(String link) {
Uri dynamicLink = Uri.parse("https://y95rt.app.goo.gl")
.buildUpon()
.appendQueryParameter("link", link)
.appendQueryParameter("apn", "c.kristofer.jaxxx")
.build();
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_SUBJECT, "Join my group for Lesn");
intent.putExtra(Intent.EXTRA_TEXT, dynamicLink.toString());
startActivity(intent);
}
任何答案/建议都表示赞赏,也可以改变我的结构。谢谢
答案 0 :(得分:1)
删除ProfileInfo
,然后执行此操作:
Groups
groupid
userid
name: userx
email: userx@gmail.com
userid1
name: usery
email: usery@gmail.com
然后,如果您有一个名单列表,那么要检索以下内容:
DatabaseReference reference = FirebaseDatabase.getInstance().getReference().child("Groups").child(groupUid);
reference.orderByChild("name").equalTo(name_here).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot datas: dataSnapshot.getChildren()){
String keys=datas.getKey();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
快照将位于子groupid
,然后如果条件满足,您将迭代并获取该用户的ID。