离线消息
接收离线消息需要在初始化成功的回调里面添加监听,参考文档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通知等等
- }