已经标记conversation的所有消息为已读,但再次获取conversation时未读消息不为0

问题描述

1. 在聊天界面根据对方的环信id使用EaseMob.sharedInstance().chatManager.conversationForChatter!得到当前聊天的conversation,在viewDidDisappear时调用conversation.markAllMessagesAsRead标记这个conversation的所有消息为已读,此时的unreadMessageCount显示为0,在这之后保证没有新消息到来2. 但是在消息列表界面通过loadAllConversationsFromDatabaseWithAppend2Chat取得的对应conversation中unreadMessageCount不为0,这样就造成了从聊天界面返回时未读标记仍然存在,必须再次进入返回,count才为0,请问这个问题应该如何解决?

解决方案

conversation从本地获取,不要用那个方法去创建。[EaseMob sharedInstance].chatmanager conversations
解决方案二:
进入聊天界面的时候把所有消息设置为已读就好 _conversation = [[EaseMob sharedInstance].chatManager conversationForChatter:_chatterUserID conversationType:eConversationTypeChat];[_conversation markAllMessagesAsRead:YES];

时间: 2024-09-20 09:42:44

已经标记conversation的所有消息为已读,但再次获取conversation时未读消息不为0的相关文章

怎么获取到有未读消息的会话

问题描述 如题............ 解决方案 这个遍历所有的会话,判断conversation.unreadMessagesCount 是否为空   就能拿到会话对象了吧

未读消息个数

问题描述 我集成了easeui 3.0的demo,对于未读消息,如果是别人发起的会话,则是会显示未读消息的,但如果我保留未读消息,关掉程序在开,则没有未读消息.跟踪之后发现,本地数据库是由未读消息的.但NSArray *conversations = [[[EaseMob sharedInstance] chatManager] conversations];没数据,没有会话所以没有未读消息.但NSInteger unreadCount = [[[EaseMob sharedInstance]

android获取组未读消息条数

问题描述 请问android有获取单个组未读消息的方法吗? 解决方案 没有

Android 高仿QQ滑动弹出菜单标记已读、未读消息

  在上一篇博客<Android 高仿微信(QQ)滑动弹出编辑.删除菜单效果,增加下拉刷新功能>里,已经带着大家学习如何使用SwipeMenuListView这一开源库实现滑动列表弹出菜单,接下来,将进一步学习,如何为不同的list item呈现不同的菜单,此处我们做一个实例:Android 高仿QQ滑动弹出菜单标记已读.未读消息,看下效果图: 1. 创建项目,并导入SwipeMenuListView类库 2. 创建消息实体bean: public class Msg { public int

Android仿QQ滑动弹出菜单标记已读、未读消息_Android

在上一篇<Android仿微信滑动弹出编辑.删除菜单效果.增加下拉刷新功能>里,已经带着大家学习如何使用SwipeMenuListView这一开源库实现滑动列表弹出菜单,接下来,将进一步学习,如何为不同的list item呈现不同的菜单,此处我们做一个实例:Android 高仿QQ滑动弹出菜单标记已读.未读消息,看下效果图: 1. 创建项目,并导入SwipeMenuListView类库 2. 创建消息实体bean: public class Msg { public int id; publi

iOS 如何将未读的消息标记为已读

问题描述 我现在需要点一个按钮将未读消息标记为已读,但是仅仅不显示未读数是不行的,再次来消息时会全部显示出来.不知道有没有这样的方法,将未读消息数清零或者标记为已读? 解决方案 找到了.....

Android仿QQ滑动弹出菜单标记已读、未读消息

在上一篇<Android仿微信滑动弹出编辑.删除菜单效果.增加下拉刷新功能>里,已经带着大家学习如何使用SwipeMenuListView这一开源库实现滑动列表弹出菜单,接下来,将进一步学习,如何为不同的list item呈现不同的菜单,此处我们做一个实例:Android 高仿QQ滑动弹出菜单标记已读.未读消息,看下效果图: 1. 创建项目,并导入SwipeMenuListView类库 2. 创建消息实体bean: public class Msg { public int id; publi

iOS环信的设置某条消息为已读,为何不起作用

问题描述 聊天发送了一条消息,通过控制台输出,看出设置为已读成功,为什么后面打印的未读条数还是为1,而且不进行别的操作,直接重新运行,未读消息数量是为0的,这是为什么,是方法(markMessageAsReadWithId:)不起作用吗?附件为控制台输出的截图 解决方案 这个方法是标记接收到的消息的.解决方案二:我也是用在接收消息的时候,我在聊天界面收到了一条消息,我把他设置为已读,然后返回到会话刷新列表,还是有一条未读消息在

iOS能把消息的已读状态发送到服务器上吗?

问题描述 iOS能把消息的已读状态发送到服务器上吗? 解决方案 sdk提供已读回执/*! @method @brief 收到"已读回执"时的回调方法 @discussion 发送方收到接收方发送的一个收到消息的回执, 意味着接收方已阅读了该消息 @param resp 收到的"已读回执"对象, 包括 from, to, chatId等 @result */- (void)didReceiveHasReadResponse:(EMReceipt *)resp;解决方案