跳到主要内容

撤回消息

IMKit SDK 默认已经实现了一套消息撤回和展示逻辑,不需要额外调用会话相关 API。如果已有实现无法满足您的需求,可以使用 IMCenter 中相关 API。

撤回消息

您可以在自定义页面调用以下方法撤回消息,该方法会同时触发会话列表和会话页面的刷新。

IMCenter.getInstance().recallMessage(message, pushContent, callback)
参数类型说明
messageMessage要撤回的消息。
pushContentString消息被撤回时,通知栏显示的内容。
callbackResultCallback撤回消息的结果回调。onSuccess 中会返回替换后撤回提示小灰条消息(RecallNotificationMessage),您可以根据需要在界面展示。

监听他人撤回消息事件

您可以添加监听器,监听已接收的消息被撤回的事件。

private RongIMClient.OnRecallMessageListener mRecallMessageListener =
new RongIMClient.OnRecallMessageListener() {
@Override
public boolean onMessageRecalled(
Message message, RecallNotificationMessage recallNotificationMessage) { }
};

IMCenter.getInstance().addOnRecallMessageListener(mRecallMessageListener);

// 不需要时可移除
IMCenter.getInstance().removeOnRecallMessageListener(mRecallMessageListener);