java - 如何从 Firebase 数据库中检索所有花瓶?

标签 java android firebase firebase-realtime-database

我只想从我的产品节点检索所有数据,我不确定如何执行此操作,这就是我的数据库的设置方式。

Producuts(yes I am aware products is misspelled) 
 sH8LzoaH9UaXahlmssixTpvQy8q2 (UUID)
 -LiToCix_BpBU2G5b0GF (Push value)
 Description: 
 PostImage: 
 -Lj71JBxtvmbjTRLaA-6  (Push value)
 Description: 
 PostImage: 
 -Lj71K5QfoguoLKdUDL4.  (Push value)
 Description:  
 PostImage: 

正如您从我的代码 fragment 中看到的,我已经设置了一个值事件监听器,但我不确定如何从“产品”节点检索所有值。

public void fetchUserInfo(){

    productDatabaseRefrence = FirebaseDatabase.getInstance().getReference().child("Producuts").child(currentUser.getUid());
    productDatabaseRefrence.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {

            String mGroupId = productDatabaseRefrence.push().getKey();
            Log.i("id",mGroupId);


        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });

}

最佳答案

根据图像,您有以下数据库:

Producuts(yes I am aware products is misspelled) 
   sH8LzoaH9UaXahlmssixTpvQy8q2 (UUID)
      -LiToCix_BpBU2G5b0GF (Push value)
         Description: 
         PostImage: 
      -Lj71JBxtvmbjTRLaA-6  (Push value)
         Description: 
         PostImage: 
      -Lj71K5QfoguoLKdUDL4.  (Push value)
         Description:  
         PostImage: 

要检索数据库中的描述postimage,请尝试以下操作:

@Override
public void onDataChange(DataSnapshot dataSnapshot) {
   for(DataSnapshot ds : dataSnapshot.getChildren()){
      String key  = ds.getKey();
      String desc = ds.child("Description").getValue(String.class);
      String img  = ds.child("PostImage").getValue(String.class);
   }
}

使用getKey()您可以检索随机ID示例-LiToCix_BpBU2G5b0GF(Push value)并使用child()您可以检索每个随机 ID 下都有不同的子项。

关于java - 如何从 Firebase 数据库中检索所有花瓶?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57002134/

相关文章:

java - 在 Main 方法中运行两个线程

Android:如何从 IME 设置首选键盘 View 模式

firebase - flutter : future 不工作,它告诉我错误?

javascript - JavaScript 中的 WebRTC

ios - Fabric 回答舍入 Int 值

java - 将样式添加到 tomcat 8 中的目录列表

井字游戏中的 Java Alpha-Beta 修剪

java - CN1 : Change textcolor from second line of multibutton

android - 尽管使用了 WeakReference,AlertDialog 仍会泄漏

android - Instant Run 执行了完整的构建和安装,因为设备上的安装与磁盘上的本地构建不匹配