我正在为我的应用程序添加聊天模块,但是当我设置新值时,前一个被删除时一直遇到问题。我的Android源代码看起来像:

   Map dictMap = new HashMap();
   dictMap.put(Message.chatId,1);
   userMessageRef.child(Message.senderId + "/" + RecieverUID).setValue(dictMap);
   recipientUserMessageRef.child(RecieverUID + "/" + Message.senderId).setValue(dictMap);


在Firebase中,结构为SenderID,ReceiverID和dictMap,但发生的情况是每次我发送新消息时,都会删除前一个消息。

最佳答案

你这么喜欢

       Map dictMap = new HashMap();
       dictMap.put(Message.chatId,1);
       userMessageRef.child(Message.senderId + "/" + RecieverUID).push().setValue(dictMap);
       recipientUserMessageRef.child(RecieverUID + "/" + Message.senderId).push().setValue(dictMap);


在这种方法中,为每条消息创建随机id,并且像json这样

     RecieverUID + "/" + Message.senderId{
                    id1:message,
                    id2:message,
                  }

10-06 10:06