注册

如何更新消息状态为未读?

本帖最后由 infinity8942 于 2015-4-28 11:21 编辑

我想把已经收到并阅读过的的消息,标记成未读状态。EMMessage message = conversationList.get(position).getLastMessage();
message.setUnread(true);
EMChatManager.getInstance().updateMessageBody(message);
Log.d("test","~unread count = "+ conversationList.get(position).getUnreadMsgCount());
conversationList为消息列表界面中的会话集合,长按一个会话就把他最后一条消息置为未读状态。可打印出来这个会话的未读数还是0,不知道这样操作是否正确?

已邀请:
设置为未读后,你可以去本地数据库看下是否修改成功了
> forum.php?mod=redirect&goto=findpost&pid=2133&ptid=930
设置为未读后,你可以去本地数据库看下是否修改成功了


谢谢提醒,我重新取了那条message,状态在数据库里没有改变。请问这是什么问题?setUnread方法怎么更新数据库呢?
设置为未读之后还有没有进行其他的操作,会不会又把他置为已读了
> forum.php?mod=redirect&goto=findpost&pid=2135&ptid=930
设置为未读之后还有没有进行其他的操作,会不会又把他置为已读了


我是紧接着获取打印的,其他的操作也是查询UnreadMsgCount、重新获取消息列表的会话集合并排序。

只有点击聊天界面才会置为已读,或者点击别的按钮来全部忽略(置为已读),可并没有这些操作。
那应该是不能手动更改状态
好的 谢谢回复

要回复问题请先登录注册