hyphenate_SDK4.0 4.6.0
hyphenate java IM SDK
Public 成员函数 | 所有成员列表
com.hyphenate.EMMessageListener接口 参考

Public 成员函数

void onMessageReceived (List< EMMessage > messages)
 
default void onCmdMessageReceived (List< EMMessage > messages)
 
default void onMessageRead (List< EMMessage > messages)
 
default void onGroupMessageRead (List< EMGroupReadAck > groupReadAcks)
 
default void onReadAckForGroupMessageUpdated ()
 
default void onMessageDelivered (List< EMMessage > messages)
 
default void onMessageRecalled (List< EMMessage > messages)
 
default void onMessageRecalledWithExt (List< EMRecallMessageInfo > recallMessageInfo)
 
default void onMessageChanged (EMMessage message, Object change)
 
default void onReactionChanged (List< EMMessageReactionChange > messageReactionChangeList)
 
default void onMessageContentChanged (EMMessage messageModified, String operatorId, long operationTime)
 
default void onMessagePinChanged (String messageId, String conversationId, EMMessagePinInfo.PinOperation pinOperation, EMMessagePinInfo pinInfo)
 

详细描述

消息事件监听器。 用于监听消息接收情况,消息成功发送到对方手机后会有回执(需开启送达回执,详见 com.hyphenate.chat.EMOptions#setRequireDeliveryAck(boolean))。 对方阅读了这条消息也会收到回执(需开启允许已读回执,详见 com.hyphenate.chat.EMOptions#setRequireAck(boolean))。 发送消息过程中,消息 ID 会从最初本地生成的 uuid 变更为服务器端生成的全局唯一 ID,该 ID 在使用 SDK 的所有设备上均唯一。 应用需实现此接口监听消息变更状态。

添加消息监听:
```java
EMClient.getInstance().chatManager().addMessageListener(mMessageListener);
```

移除消息监听:
```java
EMClient.getInstance().chatManager().removeMessageListener(mMessageListener);
```

成员函数说明

◆ onCmdMessageReceived()

default void com.hyphenate.EMMessageListener.onCmdMessageReceived ( List< EMMessage messages)

收到命令消息。 与 onMessageReceived(List) 不同, 这个回调只包含命令的消息,命令消息通常不对用户展示。

◆ onGroupMessageRead()

default void com.hyphenate.EMMessageListener.onGroupMessageRead ( List< EMGroupReadAck groupReadAcks)

收到群组消息的已读回执。

◆ onMessageChanged()

default void com.hyphenate.EMMessageListener.onMessageChanged ( EMMessage  message,
Object  change 
)

收到消息变化,包括消息 ID 的变化。

参数
message修改后的消息。
change消息的变化。

◆ onMessageContentChanged()

default void com.hyphenate.EMMessageListener.onMessageContentChanged ( EMMessage  messageModified,
String  operatorId,
long  operationTime 
)

收到消息内容变化。

参数
messageModified修改的消息对象,其中的 message body 包含消息修改次数、最后一次修改的操作者、最后一次修改时间等信息。 你也可通过 onMessageContentChanged 回调获得最后一次修改的操作者和最后一次修改时间等信息。
operatorId最后一次修改消息的用户。
operationTime消息的最后一次修改时间戳,单位为毫秒。

◆ onMessageDelivered()

default void com.hyphenate.EMMessageListener.onMessageDelivered ( List< EMMessage messages)

收到消息的送达回执。

◆ onMessagePinChanged()

default void com.hyphenate.EMMessageListener.onMessagePinChanged ( String  messageId,
String  conversationId,
EMMessagePinInfo.PinOperation  pinOperation,
EMMessagePinInfo  pinInfo 
)

收到消息的置顶状态变化。

参数
messageId消息 ID。
conversationId会话 ID。
pinOperation消息置顶操作的类型:包含置顶和取消置顶。详见 EMMessagePinInfo.PinOperation
pinInfo消息置顶详情,包含置顶/取消置顶操作者的用户 ID 和操作时间等。

◆ onMessageRead()

default void com.hyphenate.EMMessageListener.onMessageRead ( List< EMMessage messages)

收到消息的已读回执。

◆ onMessageRecalled()

default void com.hyphenate.EMMessageListener.onMessageRecalled ( List< EMMessage messages)

撤回收到的消息。

◆ onMessageRecalledWithExt()

default void com.hyphenate.EMMessageListener.onMessageRecalledWithExt ( List< EMRecallMessageInfo >  recallMessageInfo)

撤回收到的消息(支持接收在离线期间被撤回的消息 推荐使用 onMessageRecalledWithExt

参数
recallMessageInfo被撤回消息的详情 注: 接收方离线期间被撤回消息 recallMessage 参数的值为 null。

◆ onMessageReceived()

void com.hyphenate.EMMessageListener.onMessageReceived ( List< EMMessage messages)

收到消息。 在收到文本、图片、视频、语音、地理位置和文件等消息时,通过此回调通知用户。

◆ onReactionChanged()

default void com.hyphenate.EMMessageListener.onReactionChanged ( List< EMMessageReactionChange messageReactionChangeList)

收到 Reaction 变更消息。

◆ onReadAckForGroupMessageUpdated()

default void com.hyphenate.EMMessageListener.onReadAckForGroupMessageUpdated ( )

收到群组消息的读取状态更新。


该接口的文档由以下文件生成: