已读回执
IMKit 提供了单聊、群聊的已读回执功能。App 用户通过已读回执获知对方是否阅读该消息。
在 IMKit 内置页面中已默认实现并启用已读回执功能。在单聊会话中,消息默认更新已读状态。在群聊会话中,消息发送者需要在页面上主动请求获取已读状态。
阅读回执开关
IMKit 中回执功能默认开启,在单聊和群聊中默认会展示消息回执。
您可以将 res
下 rc_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>