【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 前调用下面的方法
    /**
     * 设置消息扩展信息列表
     * 

扩展信息只支持单聊和群组,其它会话类型不能设置扩展信息。

* * @param expansion 消息扩展信息列表 */ public void setExpansion(HashMap 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)