清除本地记录后,getAllMsgCount仍然返回先前的个数
本帖最后由 jerryztest 于 2015-5-7 09:32 编辑
Android端:
当我调用EMChatManager.getInstance().clearConversation(groupId)后,调用EMConversation的getAllMsgCount仍然返回先前的个数,但是调用loadMoreGroupMsgFromDB是没有数据的,即本地数据库中的记录是清除了的。
文档上说:getAllMsgCount是获取本地存储会话的全部消息数目,为什么我清空本地记录后,仍然返回先前的个数?
Android端:
当我调用EMChatManager.getInstance().clearConversation(groupId)后,调用EMConversation的getAllMsgCount仍然返回先前的个数,但是调用loadMoreGroupMsgFromDB是没有数据的,即本地数据库中的记录是清除了的。
文档上说:getAllMsgCount是获取本地存储会话的全部消息数目,为什么我清空本地记录后,仍然返回先前的个数?
没有找到相关结果
已邀请:
17 个回复
zhangnan
jerryztest
你去本地数据库看一下就知道有没有了
调用clearConversation后,我去数据库查了的chat表中是被清空了,但是为什么conversation.getAllMsgCount仍然返回大于0的值
zhangnan
jerryztest
从内存拿的吧,内存有没有清空
clearConversation不会清除内存中的吗?要怎样才能把数据库与内存中的都清掉?
jerryztest
jerryztest
从内存拿的吧,内存有没有清空
conversation.getAllMessage从内存中获取没有数据,loadMoreFromDb从数据库中获取也没有数据,为什么getAllMsgCount仍然大于0
zhangnan
conversation.getAllMessage从内存中获取没有数据,loadMoreFromDb从数据库中获取也没有数据,为什么getA ...
这个你看看在这之前有没有做什么操作干扰了
zhangnan
conversation.getAllMessage从内存中获取没有数据,loadMoreFromDb从数据库中获取也没有数据,为什么getA ...
这个你看看在这之前有没有做什么操作干扰了
jerryztest
这个你看看在这之前有没有做什么操作干扰了
我就调用了clearConversation后,调用了getAllMessage,再调用getAllMsgCount
jerryztest
这个你看看在这之前有没有做什么操作干扰了
有没有直接获取本地数据库中指定会话一共有多少条记录的接口啊,我理解的是getAllMsgCount是取的本地数据库中的个数,既然数据库里已经清空,为什么仍然返回大于0的值
zhangnan
有没有直接获取本地数据库中指定会话一共有多少条记录的接口啊,我理解的是getAllMsgCount是取的本地数据 ...
你看下这个conversation是不是没有消息了
zhangnan
有没有直接获取本地数据库中指定会话一共有多少条记录的接口啊,我理解的是getAllMsgCount是取的本地数据 ...
你看下这个conversation是不是没有消息了
jerryztest
你看下这个conversation是不是没有消息了
我都是对同一个conversation操作的啊,内存和数据库里都没数据了,getAllMsgCount仍然返回大于0的值啊
jerryztest
你看下这个conversation是不是没有消息了
确定没消息了啊
zhangnan
确定没消息了啊
我刚写代码测试了下,确实是这样,有缓存吧,过一会就好了
jerryztest
我刚写代码测试了下,确实是这样,有缓存吧,过一会就好了
这个主要是因为我们的标题栏上要显示当前会话的消息条数,而这个条数我是通过getAllMsgCount获取的,如果有缓存的话,这个地方的条数应该怎么处理呢?
zhangnan
这个主要是因为我们的标题栏上要显示当前会话的消息条数,而这个条数我是通过getAllMsgCount获取的,如果 ...
用这个方法conversation.getMsgCount()