android 融云会话列表,为什么切换账号之后会话列表不刷新,还显示上一个帐号的内容?...
融云的會(huì)話列表是由fragment實(shí)現(xiàn)的。如果用戶的activity沒(méi)有通知fragment,fragment是不會(huì)進(jìn)行自動(dòng)刷新的。
下面是兩個(gè)解決方案,以供參考。為了方便描述,下面所有的activity都是指的集成了會(huì)話列表ConversationListFragment的那個(gè)activity。在第一個(gè)帳號(hào)調(diào)用logout之后,activity調(diào)用finish()關(guān)閉activity,這樣第二個(gè)帳號(hào)登錄的時(shí)候activity和ConversationListFragment都會(huì)重新走生命周期重新加載。
如果因?yàn)榉N種原因不方便在logout的時(shí)候finish掉activity,那么可以在重新登錄的時(shí)候在activity里使用下面代碼重新加載fragment。
Uri?uri?=?Uri.parse("rong://"?+?getApplicationInfo().packageName).buildUpon()
.appendPath("conversationlist")
.appendQueryParameter(Conversation.ConversationType.PRIVATE.getName(),?"false")?//設(shè)置私聊會(huì)話是否聚合顯示
.appendQueryParameter(Conversation.ConversationType.GROUP.getName(),?"true")//群組
.appendQueryParameter(Conversation.ConversationType.DISCUSSION.getName(),?"false")//討論組
.appendQueryParameter(Conversation.ConversationType.PUBLIC_SERVICE.getName(),?"false")//公共服務(wù)號(hào)
.appendQueryParameter(Conversation.ConversationType.APP_PUBLIC_SERVICE.getName(),?"false")//公共服務(wù)號(hào)
.appendQueryParameter(Conversation.ConversationType.SYSTEM.getName(),?"false")//系統(tǒng)
.build();
mConversationListFragment.setUri(uri);
mConversationListFragment.onRestoreUI();
其中mConversationListFragment即用戶集成的會(huì)話列表,uri設(shè)置請(qǐng)參考Android開發(fā)文檔。
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的android 融云会话列表,为什么切换账号之后会话列表不刷新,还显示上一个帐号的内容?...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: android 处理通话焦点,java
- 下一篇: html自动轮播中间放大,html5+c