获取会话未读消息
IMLib SDK 支持从指定会话中获取未读消息,可满足 App 跳转到第一条未读消息、展示全部未读 @ 消息的需求。
获取会话中第一条未读消息
获取会话中的最早一条未读消息。
RongCoreClient.getInstance().getTheFirstUnreadMessage(conversationType, targetId, callback);
参数 | 类型 | 说明 |
---|---|---|
conversationType | ConversationType | 会话类型 |
targetId | String | 会话 Id |
callback | IRongCoreCallback.ResultCallback<Message> | 回调接口 |
获取成功后,callback
中会返回消息对象(Message)。
ConversationType conversationType = ConversationType.PRIVATE;
String targetId = " 会话 Id ";
RongCoreClient.getInstance().getTheFirstUnreadMessage(conversationType, targetId, new ResultCallback<Message>() {
@Override
public void onSuccess(Message message) {
}
@Override
public void onError(IRongCoreEnum.CoreErrorCode e) {
}
});
获取会话中未读的 @ 消息
提示
- 低于 5.2.5 版本仅提供不带
count
与desc
参数的getUnreadMentionedMessages
方法,每次最多返回 10 条数据。 - 从 5.2.5 版本开始,
getUnreadMentionedMessages
支持count
与desc
参数。
获取会话中最早或最新的未读 @ 消息,最多返回 100 条。
RongCoreClient.getInstance().getUnreadMentionedMessages(conversationType, targetId, count, desc, callback);
参数 | 类型 | 说明 |
---|---|---|
conversationType | ConversationType | 会话类型 |
targetId | String | 会话 Id |
count | int | 消息条数。最大 100 条。 |
desc | boolean | true :拉取最新的 count 条数据。false :拉取最旧的 count 条数据。 |
callback | IRongCoreCallback.ResultCallback<List<Message>> | 回调接口 |
获取成功后,callback
中会返回消息对象(Message)列表。
ConversationType conversationType = ConversationType.PRIVATE;
String targetId = " 会话 Id ";
int count = 100;
boolean desc = true;
RongCoreClient.getInstance().getUnreadMentionedMessages(conversationType, targetId, count, desc, new ResultCallback<List<Message>>() {
@Override
public void onSuccess(List<Message> messageList) {
}
@Override
public void onError(IRongCoreEnum.CoreErrorCode e) {
}
});