问题描述
**为什么调用getConversation()获取不到?求助求助**
解决方案
A、登陆成功后需要调用EMGroupManager.getInstance().loadAllGroups();EMChatManager.getInstance().loadAllConversations();保证进入主页面后本地会话和群组都load完毕。另外如果登陆过,app长期在后台再进的时候也可能会导致加载到内存的群组和会话为空,可以在主页面的oncreate里也加上这两句代码,当然,更好的办法应该是放在程序的开屏页,可参考demo的SplashActivity。
解决方案二:
**
解决方案三:
客户端获取需要load获取获取聊天记录EMConversation conversation = EMChatManager.getInstance().getConversation(username|groupid);//获取此会话的所有消息List messages = conversation.getAllMessages();//sdk初始化加载的聊天记录为20条,到顶时需要去db里获取更多//获取startMsgId之前的pagesize条消息,此方法获取的messages sdk会自动存入到此会话中,app中无需再次把获取到的messages添加到会话中List messages = conversation.loadMoreMsgFromDB(startMsgId, pagesize);//如果是群聊,调用下面此方法List messages = conversation.loadMoreGroupMsgFromDB(startMsgId, pagesize);
时间: 2024-11-05 14:57:59