【发布时间】:2018-05-22 20:24:22
【问题描述】:
我有这个代码:
DatabaseReference mdatabase = FirebaseDatabase.getInstance().getReference("allmessages");
mdatabase.child(mAuth.getCurrentUser().getUid()).child(userID).child(uploadID).push().setValue("somevalue");
然后在另一个班级我有这个代码:
DatabaseReference mdatabase = FirebaseDatabase.getInstance().getReference("allmessages");
mdatabase.child(mAuth.getCurrentUser().getUid()).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//Loop through all files in Uploads DataBase
for(DataSnapshot postSnapshot : dataSnapshot.getChildren()){
AllChatMessagesGet allChatMessagesGet = postSnapshot.getValue(AllChatMessagesGet.class);
我是否可以通过上面使用的代码获得mdatabase.child(mAuth.getCurrentUser().getUid()).child(userID).child(uploadID).push().setValue("somevalue"); 下的所有值。
因为它没有找回我的任何东西。我认为addValueEventListener 中的上述代码将通过mAuth.getCurrentUser().getUid() 的所有子类并为我检索“somevalue”。
但事实并非如此。那么如何检索“somevalue”。还有其他方法吗?因为代码是在不同的类中编写的,我不知道如何获取 .Child(userID) 和 .Child(uploadID) 这对我来说会是个问题。
无论如何,我是否可以检索mdatabase.child(mAuth.getCurrentUser().getUid()) 的所有孩子及其下方存在一些child 的值。
【问题讨论】:
-
请添加您的数据库结构并指明您要获取的数据。
-
我已经添加了数据库结构的图片
-
您在问:“无论如何,我是否可以检索
mdatabase.child(mAuth.getCurrentUser().getUid())的所有孩子及其值(哪些值?),它们存在于下面的某个孩子(哪个孩子?)它。”。请注明您想要获得的确切值。 -
好吧对不起,如果我不清楚。 AllChatMessages 的 2 个孩子是 userUid。我想打电话给
mdatabase.child(mAuth.getCurrentUser().getUid()),并以某种方式获得以LD6开头的孩子的价值。等于mdatabase.child(mAuth.getCurrentUser().getUid()).child(userID).child(uploadID).push().setValue("somevalue");中的“somevalue”@ -
有一种方法但是更好地理解,“获取以LD6开头的childs的值”是什么意思?你想通过调用
mdatabase.child(mAuth.getCurrentUser().getUid())列出所有这些ID?
标签: java android firebase firebase-realtime-database