融雲如何顯示陌生人暱稱、頭像
阿新 • • 發佈:2019-02-15
android有兩種方法,一種是有完善的資料系統儲存使用者資訊,一種是設定屬性,在傳送訊息的時候攜帶自身資訊。
這裡我要講的是第二種,並且只適用於重寫ConversationListAdapter的情況下。核心是:
RongIM.getInstance().setCurrentUserInfo(info);
RongIM.getInstance().setMessageAttachedUserInfo(true);
這兩個屬性設定攜帶自身資訊。上篇文章說道通過RongIM.getInstance().getConversationList()來拿到會話列表的,那麼就需要傳送和接收融雲訊息的監聽了,在監聽裡更新會話集合。這裡就需要注意了,陌生人傳送訊息後,在接收訊息的監聽裡面拿到會話,會話裡面再拿到content,content再拿到userInfo,這裡的userInfo是陌生人的,但是,如果你傳送訊息監聽裡也更新了會話集合,那麼,當你點進陌生人的會話介面並回復訊息,那麼返回後,會話列表顯示的就是自己的暱稱和頭像了。那麼問題就來了,要怎麼解決這個問題呢?其實很簡單,說白了,就是回覆訊息重新整理了userInfo導致的,那麼,我們就在傳送訊息的監聽裡判斷一下,如果集合數量沒有變,我們就不重新整理集合。