添加消息监听
接口
kotlin
fun BimMessageManager.addMessageListener(listener: BimMsgListener)
fun BimMessageManager.removeMessageListener(listener: BimMsgListener?)
fun BimMessageManager.removeMessageListener(key: String)1
2
3
2
3
代码示例
kotlin
val msgListener = object : BimMsgListener {
override val key: String = "message_listener"
override fun onReceive(message: BimMessage) {
// 收到新消息
}
override fun onUndo(message: BimMessage, operator: BimMessageParticipant) {
// 消息被撤回
}
override fun onReadReceipt(event: BimReadReceiptEvent) {
// 收到已读回执
}
override fun onOfflineSyncStart(eventData: BimOfflineSyncEvent) {
// 离线同步开始
}
override fun onOfflineSyncEnd(eventData: BimOfflineSyncEvent) {
// 离线同步结束
}
override fun onOfflineBatchReceive(messages: List<BimMessage>) {
// 批量离线消息
}
}
BimImManager.getInstance()
.getMessageManager()
.addMessageListener(msgListener)1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
onReceive 用于实时消息,onOfflineBatchReceive 用于离线批次;离线批次已按 ID 去重并按与 getMessages 一致的最新到最旧顺序返回。群组/好友 listener 不负责插入消息气泡。
