离线消息

接收离线消息需要在初始化成功的回调里面添加监听,参考文档IM接收消息监听

离线消息总数

用户登录以后,应该首先获取自己的云通讯服务端的离线条数,具体代码如下:(参考Demo中的IMChattingHelper.java)
代码示例                                    
  • @Override
  • public void onOfflineMessageCount(int count) {
  •     // count参数标识当前账号的离线消息数
  •    }                           
              

设置离线消息数

根据总的离线条数,决定获取多少条离线消息,具体代码如下:如下:(参考Demo中的IMChattingHelper.java)
代码示例                                       
  • @Override
  • public int onGetOfflineMessage() {
  •     // 注册SDK的参数需要设置如下才能收到该回调
  •     // ECInitParams.setOnChatReceiveListener(new OnChatReceiveListener());
  •     // 建议根据onHistoryMessageCount(int count)设置接收的离线消息数// 消息数 ECDevice.SYNC_OFFLINE_MSG_ALL:全部获取 0:不获取
  •     return count;
  •     }                              
                

客户端处理 SDk拉取的离线消息                

接收离线消息和接收在线消息处理逻辑是一样的。
 代码示例             
  • @Override
  • public void onReceiveOfflineMessage(List<ECMessage> msgs) {
  •     // 离线消息的处理可以参考 void OnReceivedMessage(ECMessage msg)方法
  •     // 处理逻辑完全一样
  •     // 参考 IMChattingHelper.java
  •     }
           

客户端处理离线消息拉取完成通知

SDK离线消息拉取完成之后会通过该接口通知应用。
代码示例                       
  • @Override
  • public void onReceiveOfflineMessageCompletion() { 
  •     // 应用可以在此做类似于Loading框的关闭,Notification通知等等
  •     }