写点什么

融云 IMkit 拦截或监听所有发送消息

发布于: 2021 年 03 月 15 日

最近集成融云 IMkit 的 SDK, 有一个需求是要监听所有发出去的消息, 根据消息类型拦截或者进行修改.


在官方文档上着了一遍, 都没有找到, 偶然在看 API 文档的时候看见了一个监听然后做了尝试, 是可以满足需求的, 所以再次记录一下.


具体的方法是 RongIM 类下的 setSendMessageListener 方法.


代码如下.


    /**
复制代码


     * 设置发送消息的监听。
复制代码


     *
复制代码


     * @param listener 发送消息的监听。
复制代码


     */
复制代码


    RongIM.setSendMessageListener(new OnSendMessageListener() {
复制代码


    
复制代码


          @Override
复制代码


         public Message onSend(Message message) {
复制代码


         
复制代码


                // 发送消息之前会走此方法. message 为要发送的消息,
复制代码


                // 如果返回 null 的话, 就不会发送此消息了.
复制代码


                return message;
复制代码


         }
复制代码


复制代码


         @Override
复制代码


        public boolean onSent(Message message, SentMessageErrorCode sentMessageErrorCode) {
复制代码


                发送成功之后会走方法. 返回 true , 就会走 SDK 的后续逻辑. 返回 false 就拦截了.         return true;
复制代码


            }
复制代码


    
复制代码


    }).
复制代码


复制代码


复制代码


用户头像

还未添加个人签名 2021.01.26 加入

还未添加个人简介

评论

发布
暂无评论
融云 IMkit 拦截或监听所有发送消息