为什么我的代码没有阅读接收方聊天?

时间:2019-04-20 07:47:24

标签: android firebase-realtime-database

我制作了一个聊天应用程序,但是当数据库中有数据时,当我打开消息活动时,该活动没有读取接收方聊天。

这是链接到Firebase实时数据库的android应用程序。

这是从数据库中读取message以便在活动中查看的代码。

private void readMessage(final String senderID, final String receiverID){
    chats = new ArrayList<>();

    ref = FirebaseDatabase.getInstance().getReference("Chats");
    ref.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            chats.clear();
            for (DataSnapshot snapshot : dataSnapshot.getChildren()){
                Chat chat = snapshot.getValue(Chat.class);
                assert chat != null;
                if (chat.getReceiver().equals(receiverID) && chat.getSender().equals(senderID)){
                    chats.add(chat);
                }

                messageAdapter = new MessageAdapter(MessageActivity.this,chats);
                recyclerView.setAdapter(messageAdapter);
            }
        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {

        }
    });
}

应用程序的当前输出:

this is current output

这是当前数据库中保存的数据。 应该有“你好”作为接收者的答复 database input

0 个答案:

没有答案