如何使用 FirebaseRecyclerOptions 检索 uid 数据

How to retrieve uid data using FirebaseRecyclerOptions

我无法在 uid 下从 firebase 检索数据。当我尝试在不使用 uid 的情况下检索数据时它工作得很好但是当我尝试从 uid 检索数据时它不起作用,谁能帮我找出数据。

FirebaseRecyclerOptions<Model> options =
            new FirebaseRecyclerOptions.Builder<Model>()
                    .setQuery(FirebaseDatabase.getInstance().getReference().child("Users").child(FirebaseAuth.getInstance().getCurrentUser().getUid()), Model.class)
                    .build();

    myAdopter = new MyAdopter(options);
    binding.adminRecycler.setAdapter(myAdopter);

由于您正在读取树中较低级别的节点,因此适配器将填充 that root 的 child 节点 - 通常是属性个人用户。这些 children 不再是 Model class.

的有效实例

如果您想显示单个用户的列表,您可以使用这样的查询:

String uid = FirebaseAuth.getInstance().getCurrentUser().getUid()
Query query = FirebaseDatabase.getInstance().getReference().child("Users").orderByKey().equalTo(uid);
FirebaseRecyclerOptions<Model> options =
            new FirebaseRecyclerOptions.Builder<Model>()
                    .setQuery(query, Model.class)
                    .build();

现在您的查询仅匹配一个 child 节点,并且该节点是有效的 Model object.