浏览 SDKs · Android
SDKsAndroid

获取消息总未读数

使用 getTotalUnreadMsgCount() 获取 Android 当前账号的总未读数。

复制

getTotalUnreadMsgCount() 返回当前账号所有会话的总未读快照,不要把当前已加载分页中的 unreadCount 简单相加。

OpenIMClient.getInstance().conversationManager.getTotalUnreadMsgCount(
    new OnBase<String>() {
        @Override
        public void onSuccess(String value) {
            int totalUnread = Integer.parseInt(value);
            updateApplicationBadge(totalUnread);
        }

        @Override
        public void onError(int code, String error) {
            recordTotalUnreadFailure(code, error);
        }
    }
);

回调值是 String,解析失败时应按业务错误处理,不能将其默认为会话列表分页的局部总数。查询本身不触发 callback。

本页归属 OnConversationListener.onTotalUnreadMessageCountChanged(int count)。在应用唯一的 OnConversationListener 中按该值更新应用角标;会话 listener 的集中设置方式见获取会话列表