Android 如何将firbease的DataSnapshot转换为json文件或如何将firebase数据库检索为json文件

Android 如何将firbease的DataSnapshot转换为json文件或如何将firebase数据库检索为json文件,android,arrays,json,firebase,firebase-realtime-database,Android,Arrays,Json,Firebase,Firebase Realtime Database,我想从firebase检索json数据,那么如何从firebase检索json数据,或者如何将firebase datasnapshot转换为json格式。firebase数据库SDK不公开原始的底层数据。如果您希望JSON来自DataSnapshot,则必须在应用程序代码中复制它 或者,您可以使用restapi从一个位置读取原始JSON(严格地说:针对https://yourdb.firebaseio.com/path/to/data.json(这里的.json非常重要,因为它告诉Fireba

我想从firebase检索json数据,那么如何从firebase检索json数据,或者如何将firebase datasnapshot转换为json格式。

firebase数据库SDK不公开原始的底层数据。如果您希望JSON来自
DataSnapshot
,则必须在应用程序代码中复制它

或者,您可以使用restapi从一个位置读取原始JSON(严格地说:针对
https://yourdb.firebaseio.com/path/to/data.json
(这里的
.json
非常重要,因为它告诉Firebase返回数据


有关这方面的更多信息,请参阅上的文档,如果您有自定义类/对象或映射,请尝试以下操作

List<JSONObject> obj=new ArrayList<JSONObject>();
DatabaseReference dbRef = FirebaseDatabase.getInstance().getReference("Your_Path");

    dbRef.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            for (DataSnapshot childDataSnapshot : dataSnapshot.getChildren()) {
                YourObjectClass cls=childDataSnapshot.getValue(YourObjectClass.class);
JSONObject jo=new JSONObject();
jo.put("your variable name",cls.YOUR_KEY);
//Extra properties...
obj.add(jo);
            }
        }
        @Override
        public void onCancelled(DatabaseError databaseError) {
        }
    });
List obj=new ArrayList();
DatabaseReference dbRef=FirebaseDatabase.getInstance().getReference(“您的_路径”);
dbRef.addValueEventListener(新的ValueEventListener(){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
对于(DataSnapshot childDataSnapshot:DataSnapshot.getChildren()){
YourObjectClass cls=childDataSnapshot.getValue(YourObjectClass.class);
JSONObject jo=新的JSONObject();
jo.put(“您的变量名”,cls.your_键);
//额外属性。。。
对象添加(jo);
}
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
}
});

自己尝试一下,然后发布一些代码。发布您的数据快照