# RongUserInfoManager

public class RongUserInfoManager

#### Author

rongcloud

## Types

DataSourceType
Link copied to clipboard
public enum DataSourceType
数据源类型。
UserDataObserver
Link copied to clipboard
public interface UserDataObserver

## Properties

dataSourceType
Link copied to clipboard
public RongUserInfoManager.DataSourceType dataSourceType

## Functions

addUserDataObserver
Link copied to clipboard
public void addUserDataObserver(RongUserInfoManager.UserDataObserver observer)
添加用户信息观察者。
getCurrentUserInfo
Link copied to clipboard
public UserInfo getCurrentUserInfo()
获取当前用户信息。
getDataSourceType
Link copied to clipboard
public RongUserInfoManager.DataSourceType getDataSourceType()
获取用户信息数据源类型。
getGroupInfo
Link copied to clipboard
public Group getGroupInfo(String groupId)
获取群组信息。
getGroupUserInfo
Link copied to clipboard
public GroupUserInfo getGroupUserInfo(String groupId, String userId)
获取群组用户信息。
getInstance
Link copied to clipboard
public static RongUserInfoManager getInstance()
getUserDisplayName
Link copied to clipboard
public String getUserDisplayName(User user)
public String getUserDisplayName(UserInfo userInfo)
public String getUserDisplayName(UserInfo userInfo, String groupMemberName)
获取用户显示名称。
getUserInfo
Link copied to clipboard
public UserInfo getUserInfo(String userId)
获取用户信息。
getUserInfoAttachedState
Link copied to clipboard
public boolean getUserInfoAttachedState()
获取当前用户关于消息体内是否携带用户信息的配置
initAndUpdateUserDataBase
Link copied to clipboard
public void initAndUpdateUserDataBase(Context context)
isCacheUserOrGroupInfo
Link copied to clipboard
public boolean isCacheUserOrGroupInfo()
preloadGroupInfos
Link copied to clipboard
public void preloadGroupInfos(List<String> ids)
预加载群信息列表 注意： 1,内部接口，不建议 SDK 外部调用。 2,该方法解决信息托管超频问题，信息提供者暂不需优化。
preloadGroupUserInfos
Link copied to clipboard
public void preloadGroupUserInfos(Map<String, String> groupUserInfos)
预加载群成员用户信息列表 注意： 1,内部接口，不建议 SDK 外部调用。 2,该方法解决信息托管超频问题，信息提供者暂不需优化。
preloadUserInfos
Link copied to clipboard
public void preloadUserInfos(List<String> ids)
预加载用户信息列表 注意： 1,内部接口，不建议 SDK 外部调用。 2,该方法解决信息托管超频问题，信息提供者暂不需优化。
refreshGroupInfoCache
Link copied to clipboard
public void refreshGroupInfoCache(Group groupInfo)
刷新群组信息缓存。
refreshGroupUserInfoCache
Link copied to clipboard
public void refreshGroupUserInfoCache(GroupUserInfo groupUserInfo)
刷新群组用户信息缓存。
refreshUserInfoCache
Link copied to clipboard
public void refreshUserInfoCache(UserInfo userInfo)
刷新用户信息缓存。
removeUserDataObserver
Link copied to clipboard
public void removeUserDataObserver(RongUserInfoManager.UserDataObserver observer)
移除用户信息观察者。
setCurrentUserInfo
Link copied to clipboard
public void setCurrentUserInfo(UserInfo userInfo)
设置当前用户信息。 如果开发者没有实现用户信息提供者，而是使用消息携带用户信息，需要使用这个方法设置当前用户的信息， 然后在init之后调用setMessageAttachedUserInfo， 这样可以在每条消息中携带当前用户的信息，IMKit会在接收到消息的时候取出用户信息并刷新到界面上。
setDataSourceType
Link copied to clipboard
public void setDataSourceType(RongUserInfoManager.DataSourceType dataSourceType)
切换用户信息数据源。
setGroupInfoProvider
Link copied to clipboard
public void setGroupInfoProvider(GroupInfoProvider groupInfoProvider, boolean isCacheGroupInfo)
设置群组信息提供者。
setGroupUserInfoProvider
Link copied to clipboard
public void setGroupUserInfoProvider(GroupUserInfoProvider groupUserInfoProvider, boolean isCacheGroupUserInfo)
设置群成员提供者 可以使用此方法，修改群组中用户昵称 设置后，当 sdk 界面展示用户信息时，会回调 getGroupUserInfo 使用者只需要根据对应的 groupId, userId 提供对应的用户信息 GroupUserInfo。 如果需要异步从服务器获取用户信息，使用者可以在此方法中发起异步请求，然后返回 null 信息。 在异步请求结果返回后，根据返回的结果调用 refreshGroupUserInfoCache 刷新信息。
setMessageAttachedUserInfo
Link copied to clipboard
public void setMessageAttachedUserInfo(boolean state)
设置消息体内是否携带用户信息。
setUserInfoProvider
Link copied to clipboard
public void setUserInfoProvider(UserInfoProvider userInfoProvider, boolean isCacheUserInfo)
设置用户信息的提供者，供 UI 获取用户名称和头像信息。 各 ViewModel 会监听用户信息的变化，进行对应刷新。 如果需要异步从服务器获取用户信息，使用者可以在此方法中发起异步请求，然后返回 null 信息。 在异步请求结果返回后，根据返回的结果调用 refreshUserInfoCache} 刷新用户信息。