Android开发如何使用融云的消息扩展

Posted 刘建伯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发如何使用融云的消息扩展相关的知识,希望对你有一定的参考价值。

android开发】如何使用融云的消息扩展

从 【4.0.3 】版本开始,融云新增了消息扩展功能,文档如下:
https://docs.rongcloud.cn/v4/...

总结文档中的几个重点:

  • 4.0.3之前的版本无法使用。
  • 消息扩展是 Message类的属性,也就是说自定义消息也可以使用。
  • 单条消息只能设置300个kv,(某些场景不可用,比如在群里发400个人可领的红包)。
  • 仅支持单聊、群聊。
  • key和value都是字符串类型,并且key不能是中文,否则会报错INVALID_PARAMETER。
  • 用IMKit的UI发送消息时需要拦截一下,设置消息扩展开关。

使用步骤:

  1. 消息的发送端必须给需要消息扩展的消息开开关,没有全局设置,只能单条消息设置。分以下两种情况:
  • 如果使用的是 IMKit 提供的UI发送消息,在 ConversationFragment中的 onSendToggleClick 方法发送消息,在 sendMessage 前调用下面的方法
    /**
     * 设置消息扩展信息列表
     * <p>扩展信息只支持单聊和群组,其它会话类型不能设置扩展信息。</p>
     *
     * @param expansion 消息扩展信息列表
     */
    public void setExpansion(HashMap<String, String> expansion) {
        this.expansion = expansion;
    }

还需要设置 canIncludeExpansion 和 expansionDic 。

  • 如果是自己调用 RongIM 和 RongIMClient 接口发的消息,用 MessageContent 类的对象构造一个 Message 对象,然后设置 canIncludeExpansion 和 expansionDic 再调用RCIM中对应的 send 方法将消息发送出去即可。
  1. 更新和删除扩展的操作可以参考官方文档。
  2. 想要实时捕获消息扩展的更改和删除,就需要设置回调,在回调中更新UI。设置回调可参考官方文档。

融云官网:https://www.rongcloud.cn/
文档频道:https://docs.rongcloud.cn/v4

以上是关于Android开发如何使用融云的消息扩展的主要内容,如果未能解决你的问题,请参考以下文章

Android开发遇到的坑-----融云聊天接收到但不能显示

iOS - 语音云通讯

融云 IMKit 音频录制参数

ios开发之 -- 5分钟集成融云的客服功能

使用融云 Web SDK 撤回消息

集成融云 IM 问题总结