Firebase索引的问题

时间:2017-06-25 19:24:06

标签: android firebase firebase-realtime-database

我用firebase做了一个聊天应用程序。最近我遇到了数据库的一些问题。在群聊中,我使用.push() firebase方法逐个添加消息。但从某些日子来看,它表现得很奇怪。就像发送消息后一样,它最后会显示出来。但经过几秒钟后,它又回到了500+级别。我不知道问题出在哪里。

我没有在规则中使用任何索引,

"groupchat":{
      "$chatid":{
        "chat":{


            ".read" : "root.child('groupmembers').child($chatid).child('members').child(root.child('users').child(auth.uid).child('username').val()).exists()",
          ".write" : "root.child('groupmembers').child($chatid).child('members').child(root.child('users').child(auth.uid).child('username').val()).exists()",


        }
}
}

不知道我是否因此而未能解决此问题

此外,我的消息结构如下所示

Message Structure

Android代码添加消息,

Map<String, Object> map = new HashMap<String, Object>();
                        map.put("username", Fusername);
                        map.put("message", message);
                        map.put("timestamp", ServerValue.TIMESTAMP);
                        map.put("type", "text");
                        map.put("zread", false);
                        chatRef.child("chat").child(chat_key).updateChildren(map);

每次都没有出现这个问题。此外,有时当用户发送消息时,由于其按下的键而保持在最高位置,该消息在旧消息之前停留时发送。

当消息较少时,一切正常。但现在它表现得如此奇怪。我需要帮助......谢谢

0 个答案:

没有答案