我如何将多个数据保存到Firebase实时数据库中

时间:2018-12-30 11:16:07

标签: android firebase firebase-realtime-database

当我必须在Firebase中插入多个数据但无法将其保存到Firebase实时数据库中时遇到问题。这是我的代码:

Map<String, DataItems> users = new HashMap<>();
users.put("users1",new DataItems(value1,value2,n_value3,n_value4));
data.setValue(users);

,在DataItems类中,此代码为:

public DataItems(String name, String category, int quantity, int prize) {...
    this.quantity = quantity;
    this.prize = prize;}

我的firebase规则是

{“规则”:{“ .read”:true,“。write”:true}}

谢谢所有帮助我发现此问题的人

1 个答案:

答案 0 :(得分:0)

我已将数据插入Firebase实时数据库中,如下所示:

//Declared globally in my activity
FirebaseDatabase database = FirebaseDatabase.getInstance();
    DatabaseReference myRef = database.getReference();

将数据插入为“ booking_id”,其中“ booking”是父节点。

myRef.child("booking/" + booking_id).addValueEventListener(valueListener);

并添加了一个侦听器以侦听返回值。

ValueEventListener valueListener = new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            //use dataSnapshot to get retured data

        }

        @Override
        public void onCancelled(DatabaseError databaseError) {
            // Getting Post failed, log a message
            Log.w(TAG, "loadPost:onCancelled", databaseError.toException());

        }
    };

并在破坏我的活动时脱离监听器。

@Override
    protected void onDestroy() {
        super.onDestroy();
        myRef.removeEventListener(valueListener);
      }

希望这对您有所帮助。为了进一步参考,您可以访问穆罕默德提到的网址作为正式文件。