SDKsFlutter
标记会话已读
使用 Flutter SDK 将指定会话的消息标记为已读。
用户进入会话界面并查阅当前消息后调用此方法,将会话未读消息数清零:
参数说明
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
conversationID | String | 是 | 目标会话 ID。 |
await OpenIM.iMManager.conversationManager.markConversationMessageAsRead(
conversationID: conversationID,
);返回结果
Future 成功表示标记已读请求已送达服务端。客户端应立即将本地该会话的未读数更新为 0。
SDK 随后会触发会话更新通知。客户端以 conversationID 为合并标识更新对应会话,完整事件监听请参考获取会话列表。
单聊已读回执通知
在单聊场景下,本端标记会话已读后,对端会通过 OnAdvancedMsgListener.onRecvC2CReadReceipt 收到已读回执。处理该回调时,根据对端 userID 确认对应 conversationID,并遍历 msgIDList 中的 clientMsgID 将消息状态更新为已读:
void handleC2CReadReceipts(List<ReadReceiptInfo> items) {
for (final receipt in items) {
mergeC2CReadReceipt(receipt);
}
}组合 listener 与集中注册方式请参考事件概览。Flutter SDK 不提供群聊成员级已读回执能力。
这个页面有帮助吗?