当前知识库站点已不再维护。请移步新版知识库:https://help.rongcloud.cn/

未读数无法清除

清除某条会话的未读消息用engine.clearUnreadCount清除成功 code 是0 的情况下,重新拉取会话,还是未被清除的状态
发布时间: 2023-04-28 09:36

回答:

  1. 确认调用清除未读数是否有传入时间戳

  2. 确认时间戳是否为 0 ,传入时间不可为 0 

  3. 确认清除时间是否大于最新时间, 不可传入大于当前时间的时间戳

  4. 确认传入的时间是否大于要被清除的时间的 senttime

  5. 确认传入的时间是否是毫秒单位

  6. 如果需要传入最新时间可以获取手机时候后根据SDK 提供的服务器差值进行计算得出最新时间。

/// 获取本地时间与服务器时间的时间差。消息发送成功后,SDK 与服务器同步时间,消息所在数据库中存储的时间就是服务器时间。 System.currentTimeMillis() - getDeltaTime() 可以获取服务器当前时间。

 /// - [返回值] 本地时间与服务器时间的差值

Future<int> getDeltaTime() async {

return RCIMWrapperPlatform.instance.getDeltaTime();

}