导入 SDK
融云支持在 DevEco Studio 中自动导入和手动导入 IMLib SDK。
环境要求
- DevEco Studio NEXT Release(5.0.3.900) 及以上。
- HarmonyOS SDK API 12 及以上。
- 手机系统版本号:NEXT.0.0.31。
自动导入 SDK
支持从 OpenHarmony三方库中心仓 获取 SDK。
- 在 entry 目录中的 oh-package.json5 中添加 SDK 依赖,然后点击 "Sync Now"。
// entry 目录中的 oh-package.json5
{
"name": "entry",
"version": "1.0.0",
"description": "Please describe the basic information.",
"main": "",
"author": "",
"license": "",
"dependencies": {
"@rongcloud/imkit" : "x.y.z"
}
}
注意
- 各个 SDK 的最新版本号可能不相同,具体 x.y.z 值可前往 融云官网 SDK 下载页面 或 OpenHarmony三方库中心仓 查询。
-
安装 SDK 成功后,您可以在项目根目录的 oh_modules/.ohpm/ 中找到融云 IMKit SDK。
-
查看更多其他融云 SDK。
打开OpenHarmony三方库中心仓,搜索关键字 rongcloud 。
手动导入 SDK
将 SDK 放入 App 仓库
在项目根路径创建 libs 目录,将 IMLib.har 和 IMKit.har 放到 libs 目录。
重写 IMLib 依赖
在项目根路径 oh-package.json5 中重写 IMLib 的依赖。
如果没有这一步,IMKit 无法正确依赖 IMLib。
原因:IMKit 无法扫描工程目录自动找到 IMLib 所在位置,所以通过 overrides 配置指明 IMLib 所在位置,然后 IMKit 就可以正常依赖 IMLib。
overrides 配置参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-oh-package-json5-V5#zh-cn_topic_0000001792256137_overrides 。
// 项目根路径 oh-package.json5
{
"modelVersion": "5.0.0",
"description": "Please describe the basic information.",
"dependencies": {
},
"devDependencies": {
"@ohos/hypium": "1.0.19",
"@ohos/hamock": "1.0.0"
},
// 重写 imlib 的位置,确保 IMKit 能够正确依赖 IMLib
"overrides": {
"@rongcloud/imlib" :"file:./libs/RongIMLib.har"
}
}
App 依赖 IMLib & IMKit
执行如下命令:
# 1. 进入 entry 目录
cd entry
# 2. 依赖 IMLib
ohpm install ../libs/RongIMLib.har
# 3. 依赖 IMKit
ohpm install ../libs/RongIMKit.har
配置项目
参考 配置说明。
初始化连接
初始化连接直接使用 IMEngine 的方法。
// 初始化 SDK
let initOption = new InitOption();
IMEngine.getInstance().init(getContext(), this.appKey, initOption);
// 连接
IMEngine.getInstance().connect(this.token, 10).then(result => {
if (EngineError.Success !== result.code) {
// IM 连接失败
return;
}
// IM 连接成功
let curUserId = result.userId as string;
})