今天更新完善关于SDK快速集成问题
遇到问题:关于环境的配置和继承重写某些类与自身逻辑不一致
在工程根目录下的 build.gradle
配置脚本的 allprojects
中添加 SDK 的 Maven 仓库地址
摘录代码如下
allprojects {
repositories {
jcenter()
mavenCentral()
maven {url "http://maven.rongcloud.cn/repository/maven-releases/"}
}
}
在项目主工程中的 build.gradle
添加远程依赖
初始化 连接IM 启动会话列表 设置用户信息
部分代码:
// 是否缓存用户信息. true 缓存, false 不缓存
// 1. <span style="color:red">当设置 true 后, 优先从缓存中获取用户信息.
// 2. 更新用户信息, 需调用 RongUserInfoManager.getInstance().refreshUserInfoCache(userInfo)
boolean isCacheUserInfo = true;
RongUserInfoManager.getInstance().setUserInfoProvider(id -> {
UserInfo userInfo = new UserInfo(userId, "userId 对应的名称", Uri.parse("userId 对应的头像地址"))
return userInfo;
}, isCacheUserInfo);
// 是否缓存用户信息. true 缓存, false 不缓存
// 1. <span style="color:red">当设置 true 后, 优先从缓存中获取用户信息.
// 2. 更新用户信息, 需调用 RongIM.getInstance().refreshUserInfoCache(userInfo)
boolean isCacheUserInfo = true;
RongUserInfoManager.getInstance().setUserInfoProvider(new UserDataProvider.UserInfoProvider() {
/**
* 获取设置用户信息. 通过返回的 userId 来封装生产用户信息.
* @param userId 用户 ID
*/
@Override
public UserInfo getUserInfo(String userId) {
// 执行异步请求逻辑方法
return null;
}
}, isCacheUserInfo);
UserInfo userInfo = new UserInfo(userId, "userId 对应的名称", Uri.parse("userId 对应的头像地址"))
RongUserInfoManager.getInstance().refreshUserInfoCache(userInfo);