logcat中的错误“无法将java.lang.String类型的对象转换为类型”

s3fp2yjn  于 2022-10-15  发布在  Java
关注(0)|答案(1)|浏览(138)

我正在尝试从uid下的Firebase检索数据。我得到一个错误日志
无法将java.lang.String类型的对象转换为类型
代码:

recview = (RecyclerView) findViewById(R.id.recview);
    recview.setLayoutManager(new LinearLayoutManager(this));

    String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
    DatabaseReference db = FirebaseDatabase.getInstance().getReference();
    DatabaseReference uidRef = db.child("Users").child(uid);

    FirebaseRecyclerOptions<model> options =
            new FirebaseRecyclerOptions.Builder<model>()
                    .setQuery(uidRef, model.class)
                    .build();

    adapter=new myadapter(options);
    recview.setAdapter(adapter);

这是数据库。我正在尝试检索文件名

{
  "Users": {
    "NseKqjViW4XO2RshRGQ7kW1swbv2": {
      "-NE4twoPdj2ZiypGd2D-": {
        "filename": "Math"
      },
      "-NE57EGP7DbgRll3yvlJ": {
        "filename": "Science"
      }
    }
  }
}
ttygqcqt

ttygqcqt1#

你需要使用query。你可以试试这个。

//DatabaseReference uidRef = db.child("Users").child(uid);
final Query query = db.child("Users").child(uid);
FirebaseRecyclerOptions<model> options = new FirebaseRecyclerOptions.Builder<model>()
   .setQuery(query, model.class)
   .build();

相关问题