參考地址1:https://developer.rongcloud.cn/ticket/info/Dj+76JSLR636HZ+8sA==?type=1
參考地址2:http://blog.csdn.net/qq_19986309/article/details/46375291
參考視頻:http://v.youku.com/v_show/id_XMTM3MjgyODYzNg==.html
用戶信息(頭像)如何刷新?
爲什麼調用 refreshUserInfoCache,有的頭像刷新了,有的沒有。
回答:
融雲有兩種顯示用戶信息的方式,一種是給需要註冊的 app 使用的,就是 setUserInfoProvider,所有用戶信息都是通過 getUserInfo 的回調來傳入。因爲 app 使用是需要註冊的,所以所有用戶信息應該都保存在 app 自己的服務器,只需要寫成:
RongIM.setUserInfoProvider(new RongIM.UserInfoProvider() {
@Override
public UserInfo getUserInfo(String userId) {
return getUserInfoFromServer(userId);
}
}, true);
同步方法這裏返回 UserInfo 就可以了。如果是網絡異步請求,需要在異步回調裏用 refreshUserInfoCache 刷新。
第二種是給不需要註冊的app使用,就是 setCurrentUserInfo 以及 setMessageAttachedUserInfo(true) 這種方式。本端發送的消息裏攜帶了自己的用戶信息,對方收到後優先使用消息裏攜帶的這一信息。可以在陌生人之間實現用戶信息傳遞,比如公共聊天室。
需要注意的是,第二種優先級比第一種高,就是說如果這條消息裏攜帶了用戶信息,再對這個 id 做刷新操作,這條消息顯示的用戶信息不會改變。因此不建議混用,有特殊需求除外。