loadMessagesFromTime method
加载一个时间段内的消息,不超过最大数量。
注意:当 maxCount 非常大时,需要考虑内存消耗。
Param startTime 搜索的起始时间。
Param endTime 搜索的结束时间。
Param count 搜索结果的最大条数。
Return 消息列表。
Throws 如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
Implementation
Future<List<ChatMessage>> loadMessagesFromTime({
required int startTime,
required int endTime,
int count = 20,
}) async {
try {
Map req = _toJson();
req["startTime"] = startTime;
req['endTime'] = endTime;
req['count'] = count;
Map<String, dynamic> result = await platform_interface.Client.instance.conversationManager
.callNativeMethod(ChatMethodKeys.loadMsgWithTime, req);
ChatError.hasErrorFromResult(result);
List<ChatMessage> msgList = [];
result[ChatMethodKeys.loadMsgWithTime]?.forEach((element) {
msgList.add(ChatMessage.fromJson(element));
});
return msgList;
} catch (e) {
rethrow;
}
}