更新时间: 2020-09-11
# 本地获取
开发者可通过下面接口获取 SDK 存储在本地数据库的历史消息。
# 参数说明
输入参数说明
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
conversationType | RCConversationType | 是 | 会话类型,单聊传入 RCConversationType.Private |
targetId | String | 是 | 接收方的 userId |
sentTime | int | 是 | 消息的发送时间 |
beforeCount | int | 是 | 指定消息的前部分消息数量 |
afterCount | int | 是 | 指定消息的后部分消息数量 |
返回参数说明
返回值 | 返回类型 | 说明 |
---|---|---|
history | List<Message> | 消息实体 Message 对象列表 |
返回参数说明
# 代码示例
onGetHistoryMessages() async { List msgs = await RongIMClient.getHistoryMessage(RCConversationType.Private, privateUserId, 0, 10); print("get history message"); for(Message m in msgs) { print("sentTime = "+m.sentTime.toString()); } }
已复制
1
2
3
4
5
6
7
2
3
4
5
6
7
# 远端获取
开发者可通过下面接口获取 SDK 存储在服务端的历史消息。单群聊历史消息需要在 开发者后台 (opens new window) 中开通 IM 商用版
并开启 单群聊消息云存储
功能才可使用。
# 参数说明
输入参数说明
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
conversationType | RCConversationType | 是 | 会话类型 |
targetId | String | 是 | 目标会话 ID |
recordTime | int | 是 | 起始的消息发送时间戳,毫秒 |
count | int | 是 | 需要获取的消息数量, 0 < count <= 200 |
回调参数说明
success 说明:
回调参数 | 回调类型 | 说明 |
---|---|---|
messages | List<Message> | 获取到的历史消息数组 |
code | int | 错误码,0 代表操作成功 |
# 代码示例
RongIMClient.getRemoteHistoryMessages(1, "1001", 0, 20,(List<Message> msgList,int code) { if(code == 0) { for(Message msg in msgList) { print("getRemoteHistoryMessages success "+ msg.messageId.toString()); } }else { print("getRemoteHistoryMessages error "+code.toString()); } });
已复制
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9