Firebase getreference()vrs getreference(value)

时间:2018-11-24 18:55:40

标签: android firebase firebase-realtime-database

我的Firebase包含不同的数据树,例如用户,兴趣爱好,班级,乐谱等。我想从两组数据“用户”和“兴趣爱好”中获取值。

从两个表中获取值的最佳方法是什么?

我应该先使用firebaseDatabase.getReference()然后

dataSnapshot.child("Users").child(“name”).getValue().toString();
dataSnapshot.child("hobbies ").child(“track”).getValue().toString();

还是我必须firebaseDatabase.getReference(“Users”)firebaseDatabase.getReference(“hobbies”);

由于我注意到firebaseDatabase.getReference()似乎是指所有数据,包括不需要的数据(类,分数等)。这会导致应用速度变慢还是有影响?

1 个答案:

答案 0 :(得分:1)

如果将侦听器附加到DatabaseReference,它将下载/读取该引用下的所有数据。因此,如果将侦听器附加到FirebaseDatabase.getInstance().getReference(),那么您正在读取数据库中的所有数据。

如果您只需要应用程序中所有数据的子集,则仅加载该数据更为有效。这意味着您需要在所需的每个数据分支上附加一个单独的侦听器。