当前知识库站点已不再维护。请移步新版知识库:https://help.rongcloud.cn/

在会话列表页面中获取用户信息

在会话列表页面中获取用户信息,例如昵称、头像等。
发布时间: 2017-12-12 10:46

回答:

1、首先在会话列表页面ConversationListActivity中获取会话列表

2、遍历会话列表获取到里面会话人的id,通过这个id,可以从本地数据库或者server端请求用户信息(头像、昵称等)

在会话列表页面ConversationListActivity可以获取到会话列表,代码如下:

RongIMClient.getInstance().getConversationList(new RongIMClient.ResultCallback<List<Conversation>>() {

            @Override

            public void onSuccess(List<Conversation> conversations) {

                String si = conversations.get(0).getTargetId();

                Conversation.ConversationType type = conversations.get(0).getConversationType();

                //从本地缓存中获取(只针对IMKit)

                UserInfo userInfo =  RongUserInfoManager.getInstance().getUserInfo(si);

            }

            @Override

            public void onError(RongIMClient.ErrorCode errorCode) {

            }

        });


3. RongUserInfoManager.getInstance().getUserInfo(si) 获取的用户信息可能为 null,这种情况下需要通过 io.rong.imkit.userinfo.RongUserInfoManager#addUserDataObserver 方法添加监听获取。