java - 如何获取组类型数据库中其他用户的Uid?

标签 java android firebase firebase-realtime-database

因此,我正在尝试制作一个显示组中当前成员的回收站 View 。下面是我的数据库的图片,基本上我有一个 groupId,它是创建者的 uid,下面我们有 3 个用户和一些其他不相关的数据。

enter image description here

问题是我不确定如何获取特定的 uid 以便我可以像这样获取他们的个人资料信息

groupsDatabase = FirebaseDatabase.getInstance().getReference().child("Groups").child(groupUid);

我也使用像这样设置的动态链接

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);

    }

感谢任何答案/建议,也愿意改变我的结构。谢谢

最佳答案

删除 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) {
   }
});

快照会在child groupid,然后如果满足条件,你会迭代并得到那个用户的id。

关于java - 如何获取组类型数据库中其他用户的Uid?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50145832/

相关文章:

java - LibGdx Box2d collison 与 Sprite 不匹配

Java Weka new Instances 实例索引属性列表

java - 为什么数组在方法调用中会发生变化?

java - Sun Java KeyManagerFactory 和空密码

android - 错误 : File google-services. 缺少 json。没有它,Google 服务插件将无法运行。

android - 此项目与您的设备 (Galaxy S3) 不兼容

android - VideoView 循环播放视频 补充

Android ListView取消选择项目

android - Ml Kit 无法检测到护照 MRZ 代码?

javascript - foreach 循环数组 promise 不被返回