java - 如何在firebase中获取两个或多个节点的子节点
问题描述
我正在寻找一种有效的方法,我可以获取所有节点及其子节点,并arraylists
使用 single将它们存储在两个不同的地方valueEventListener
。
这是我所做的。
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);
在这listener
我得到唯一的孩子allcodes
。现在我可以重复上面的代码并制作另一个听众并获得所有孩子,more_apps
但我想知道是否有更好的方法。
在这种情况下,我有多个节点firebase
,我想将它们全部放入arraylist
并将它们存储在其中sqlLite
,我必须为此编写许多侦听器。问题是有两个以上的节点及其子节点。我想一口气把它们全部搞定,在 single 里面listener
。
解决方案
推荐阅读
- java - 拆分中间有回车符的字符串(JAVA)
- json - Shopify 中 JSON 中的自定义部分存在多个问题
- javascript - 如何在 html 中使用 python、Jinja 模板创建多页发票
- laravel - 如何自定义 php artisan ui vue --auth 文件
- javascript - 调用一个模块方法在 Javascript 中抛出未定义的错误
- python - OperatorNotAllowedInGraphError 仍然存在,启用了急切执行并添加了装饰器
- azure-devops - 如何使用 Azure DevOps 部署 Quasar 项目
- javascript - 使用正则表达式将 URL 匹配到最后一个正斜杠
- laravel - Laravel - 访问获取传递的变量?
- c# - 如何从 .Net Core 中的 HttpContext 访问声明?