我正在尝试从android应用中的firebase读取数据。这就是它的样子。
我想读取标记的数据。我能够阅读子类别的关键字。但无法读取id值。
这是我的代码:
dbCategories = FirebaseDatabase.getInstance().getReference("categories");
dbCategories.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()){
for (DataSnapshot ds: dataSnapshot.getChildren()){
String name = ds.getKey();
String ids = ds.child("ids").getValue(String.class);
Log.i(name, "onDataChange: "+ids);
}
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
答案 0 :(得分:2)
您无法连接到所需的根目录。例如, tcat2 ,您可以修改 id 。
您必须指定要读取的路径。
您可以尝试以下方法:
dbCategories = FirebaseDatabase.getInstance().getReference("categories");
dbCategories.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()){
for (DataSnapshot ds: dataSnapshot.getChildren()){
String name = ds.getKey();
for(DataSnapshot ds1 : ds.child(name).child("ids").getChildren()){
String ids = ds1.getValue(String.class);
Log.i(name, "onDataChange: "+ids);
}
}
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
希望我能对您有所帮助。