Java 如何在firebase中获取两个或多个节点的子节点
我正在寻找一种有效的方法,使用单个Java 如何在firebase中获取两个或多个节点的子节点,java,android,firebase,Java,Android,Firebase,我正在寻找一种有效的方法,使用单个valueEventListener获取所有节点及其子节点,并将它们存储在两个不同的arraylists中 这是我的火力基地。 这就是我所做的 ValueEventListener allCodesListener = new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) {
valueEventListener
获取所有节点及其子节点,并将它们存储在两个不同的arraylists
中
这是我的火力基地。
这就是我所做的
ValueEventListener allCodesListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
// This method is called once with the initial value and again
// whenever data at this location is updated.
for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
CouponObj post = postSnapshot.getValue(CouponObj.class);
list.add(new CouponObj(post.getCode(), post.getDetail(), post.getExpirationDate(), post.getLikes(), post.getStatus(), post.getSuccessRate(), post.getUsers_today()));
Log.e("Get Data", post.getCode());
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
};
myRef.child("allcodes").addValueEventListener(allCodesListener);
在这个监听器中
我只得到allcodes
的子项。现在我可以重复上面相同的代码,创建另一个侦听器,获取更多应用程序的所有子项,但我想知道是否有更好的方法
在这个场景中,我在
firebase
上有多个节点,我想把它们都放在arraylist
中并存储在sqlLite
中,我必须为此编写许多侦听器。问题是有两个以上的节点及其子节点。我想在singlelistener
中一次性获得所有这些值,使用相同的onDataChange方法,您可以对另一个子对象进行另一次引用,并在其中进行迭代,以将值添加到另一个ArrayList中嵌套的listener中没有任何错误。好的,谢谢。目前,我正在使用多个侦听器来获取数据。