android 融云会话列表,为什么切换账号之后会话列表不刷新,还显示上一个帐号的内容?...

融云的会话列表是由fragment实现的。如果用户的activity没有通知fragment,fragment是不会进行自动刷新的。

下面是两个解决方案,以供参考。为了方便描述,下面所有的activity都是指的集成了会话列表ConversationListFragment的那个activity。在第一个帐号调用logout之后,activity调用finish()关闭activity,这样第二个帐号登录的时候activity和ConversationListFragment都会重新走生命周期重新加载。

如果因为种种原因不方便在logout的时候finish掉activity,那么可以在重新登录的时候在activity里使用下面代码重新加载fragment。

Uri uri = Uri.parse("rong://" + getApplicationInfo().packageName).buildUpon()

.appendPath("conversationlist")

.appendQueryParameter(Conversation.ConversationType.PRIVATE.getName(), "false") //设置私聊会话是否聚合显示

.appendQueryParameter(Conversation.ConversationType.GROUP.getName(), "true")//群组

.appendQueryParameter(Conversation.ConversationType.DISCUSSION.getName(), "false")//讨论组

.appendQueryParameter(Conversation.ConversationType.PUBLIC_SERVICE.getName(), "false")//公共服务号

.appendQueryParameter(Conversation.ConversationType.APP_PUBLIC_SERVICE.getName(), "false")//公共服务号

.appendQueryParameter(Conversation.ConversationType.SYSTEM.getName(), "false")//系统

.build();

mConversationListFragment.setUri(uri);

mConversationListFragment.onRestoreUI();

其中mConversationListFragment即用户集成的会话列表,uri设置请参考Android开发文档。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值