你好,目前系统层面的未读消息数是指服务器端还没有下发到客户端的消息数
你所看到的对话上的未读数,实际上是已经到达客户端,用户还没有点开界面前的未读数
这个数字目前我们需要开发者在客户端来维护

OK,谢谢啦,明白了。

另还有一个问题:用户A向B发送一个消息,当用户B的应用关闭时,怎么通知B有新消息。我使用LeanMessageDemo试了试,发现B退出App后,是不会收到推送消息的,只有B重新打开应用后,才会收到离线消息。

我看到这个文档了,也研究了Android版的LeanMessageDemo里面的代码。

好像是只要不调用AVIMClient.close()的方法关闭当前的AVIMClient,服务器就会推送离线消息下来。但如果关闭了AVIMClient(调用AVIMClient.close方法),那对应的离线消息就只能等到再次打开AVIMClient(调用AVIMClient.open方法),才会被推送下来。

是这样设计的么?求确认 smile

是的,一般不要调用 close。close 是用来解除当前 clientId 和这个设备关联的,比如用户登出了注销了,调用之后这个设备不再能够收到消息。