【发布时间】:2019-04-08 03:41:17
【问题描述】:
我在此处提供了我的 firebase 聊天室的快照。我在这里包含的代码可以检索单个节点的消息。我想通过单个查询搜索所有聊天室以查找新消息,以便我可以发送推送通知。还有如何知道一条消息是否是新消息以及我收到的最后一条消息是什么?
private void loadEventListFromDatabase()
{
DatabaseRef.userRef.child("ChatRoom").child(roomID).addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
GetMessage getMessage = dataSnapshot.getValue(GetMessage.class);
Message message = new Message(getMessage.getMessageBody(),getMessage.getCreator(),imageCode);
recyclerViewRCV.setLayoutManager(getMyLinearLayout());
recieveMessageList.add(message);
recieveMsgAdapter.notifyDataSetChanged();
}
@Override
public void onChildChanged(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
}
@Override
public void onChildRemoved(@NonNull DataSnapshot dataSnapshot) {
}
@Override
public void onChildMoved(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
【问题讨论】:
-
如果您考虑在某个时候尝试使用Cloud Firestore,您可以在此处找到有关如何创建完整且实用的Firestore Chat App 的教程。
标签: android firebase-realtime-database