前端取消置顶功能_Android集成环信IM,实现聊天置顶的功能

当我们的app中有集成环信即时通信SDK时,我们需要实现这样一个功能,将某一个好友的聊天设置为置顶,这样不管你当前正在跟多少好友聊天,该好友的消息始终都会出现在第一个回话列表中,这类似于微信的置顶功能。但是环信SDK并没有直接提供这样的api可以设置置顶的功能,这就需要客户端自己去实现此功能。

当然,虽然环信没有直接提供api让我们去设置,但也不是这么霸道一点辅助都不给,我们查阅环信技术文档时,发现了这样的两个方法

116d825566b04d30ec955a64904d0318.png

我们再来看下文档中关于这两个方法的解释:

26bd6ed0f86cf9c5318a1f7c20d2f070.png

扩展字段的好处就是,我们可以为每一条消息都添加一个扩展字段,用来标识消息的特别之处,比如我们可以为某一个会话设置一个扩展字段用来标识该条会话是否需要置顶,将需要置顶的会话保存在一个容器中,将不需要置顶的会话保存在另一个容器中。有了这个扩展字段,我们就可以很方便的实现置顶功能了。

具体的实现过程如下:

1、在EaseConversationListFragment中定义一个新容器,用来保存置顶的会话

be432cfed7f7a6309307f19a88412d32.png

2、在loadConversationList()方法中根据conversation.getExtField()的值是否是我们设置置顶会话的扩展字段(此处扩展字段为"is_top"),如果收到的扩展字段是is_top,则将该条会话保存到会话置顶容器中,否则保存到不是置顶容器中,如下图:

d80469363bf6a1768a53782adf813eb8.png

3、自定义对置顶会话容器进行排序(这个可随意,看自己想要怎么排就怎么排),这边给个简单的例子:

1eca15354b4521b7291ee211e8a4000a.png

4、在setUpView()方法中对会话列表数据进行组装(将置顶的会话和非置顶的会话整合到一个容器中)

18b35354d0a2a0d56955f7424eb01ec8.png

5、在会话列表更新回调里也要记得重新组装数据呦!!!

d380a6e9d1a6cfe36c5e0a6710998ee5.png

6、通过以上5个步骤后,恭喜你,万事俱备,只差去为某一个会话设置置顶或者取消置顶功能。

f1ba419875a35161ceb1cfa96b0f1a5c.png

至此,为环信IM的聊天设置会话置顶的功能已经全部实现,如有疑问,欢迎您的留言哈,后期还会不断的更新Android实际开发过程中遇到的一些问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值