注册

单聊收发消息正常,APP退出后再启动却无法获得刚才的聊天记录

聊天界面是这样初始化的:
EMChatManager.getInstance().loadAllConversations();
conversation = EMChatManager.getInstance().getConversation(username);
lst_Chat = conversation.getAllMessages();
 
发送消息是这样写的:
EMMessage message = EMMessage.createSendMessage(EMMessage.Type.TXT);
message.setChatType(ChatType.Chat);
TextMessageBody txtBody = new TextMessageBody(etxt_Content.getText().toString());
message.addBody(txtBody);
message.setReceipt(username);
conversation.addMessage(message);
EMChatManager.getInstance().sendMessage(message, new EMCallBack(....));
 
收消息的监听器是这样写的:
EMEventListener emlistener = new EMEventListener()
{
    @Override
    public void onEvent(EMNotifierEvent event)
    {
        switch (event.getEvent())
        {
            case EventNewMessage: // 接收新消息
            {
                EMMessage message = (EMMessage) event.getData();
                Activity_Chat.newMessage(message);
                break;
            }
……
 
关闭聊天界面后再打开,聊天记录显示正常
关闭APP后再打开APP,环信登录成功,但是进入聊天界面之后看不到刚才的消息
 
请问这可能是什么原因导致的? 如何解决/排查?
多谢各位!!
已邀请:
环信论坛没人懂吗。。

beyond - imgeek运营

app长期在后台再进的时候也可能会导致加载到内存的会话为空,可以在主页面的oncreate里也加上loadAllConversations,最好的方法是把loadAllConversations写在开屏页。

要回复问题请先登录注册