跳到主要内容

已读回执

IMKit 提供了单聊、群聊的已读回执功能。App 用户通过已读回执获知对方是否阅读该消息。

在 IMKit 内置页面中已默认实现并启用已读回执功能。在单聊会话中,消息默认更新已读状态。在群聊会话中,消息发送者需要在页面上主动请求获取已读状态。

阅读回执开关

IMKit 中回执功能默认开启,在单聊和群聊中默认会展示消息回执。

您可以将 resrc_config.xml 中下面的变量设为 false 来关闭此功能。

 <bool name="rc_read_receipt">false</bool>

上面变量配置为 false 后,单聊和群聊中的回执功能都会被关闭。

您也可以在进入会话列表页面之前,通过下面的代码动态配置回执功能支持的会话类型。

//下面的代码将阅读回执功能配置为仅在单聊中支持,群聊中将不启用阅读回执功能。
RongConfigCenter.conversationConfig().setSupportReadReceiptConversationType(Conversation.ConversationType.PRIVATE);

单聊阅读回执

在单聊会话中,发送方会实时收到消息的已读状态更新。在 IMKit 内置页面中,单聊已读状态显示在两处:

  • 单聊会话页面(消息列表页面):在发送方的单聊会话页面,消息的左下角会显示对号,表示对方已读。
  • 会话列表页面:会话列表的每条会话会显示会话中的最后一条消息的预览。如果单聊会话最后一条消息被对方阅读,发送方的会话列表页中对应会话条目的右下角也会显示对号,表示对方已读。

群聊阅读回执

提示

IMKit 的群聊已读回执功能仅支持文本消息类型。

在群聊会话中发送消息后 120 秒之内,发送者可以在会话页面上主动请求获取已读人数数据。在会话页面上,消息的左下角会显示对号按钮(请求阅读回执的按钮)。点击按钮后,IMKit 才会请求已读回执。IMKit 在收到已读回执结果后会刷新页面,显示为 “n 人已读”。

在群聊会话中发送消息后 120 秒之后请求阅读回执的按钮会自动消失。您可以在 res 下的 rc_config.xml 中修改回执请求按钮的有效时间。

<integer name="rc_read_receipt_request_interval">120</integer>