将多级数据保存到Android的Firebase

时间:2017-05-13 18:19:22

标签: android firebase firebase-realtime-database

我想保存此格式的数据(JSON):

HashMap

从Android获取我的Firebase数据库。如何一次性实现这一目标。 我知道可以创建firbaseRef.setValue()并传递给c但是如何处理多级数据(如变量d)和数组(如System.arraycopy()) ?

1 个答案:

答案 0 :(得分:1)

传递给setValue()Map<String,Object>中的属性值(对象)本身可以是地图或列表:

    List<String> subList = new ArrayList<>();
    subList.add("d1");
    subList.add("d2");
    subList.add("d3");

    Map<String,Object> subMap = new HashMap<>();
    subMap.put("c1", "c11");
    subMap.put("c2", "c22");

    Map<String,Object> map = new HashMap<>();
    map.put("a", "aaaa");
    map.put("b", "bbbb");
    map.put("c", subMap);
    map.put("d", subList);

    FirebaseDatabase.getInstance().getReference("test").setValue(map);