导入 SDK
融云支持使用 DevEco Studio 中自动导入和手动导入两种方式,将 RTCLib SDK 导入到您的应用工程中。
环境要求
- DevEco Studio NEXT Release(5.0.3.900)及以上。
- HarmonyOS SDK API 12 及以上。
- 手机(真机)系统版本号:NEXT.0.0.31
自动导入 SDK
1.0.0 版本开始支持通过 OpenHarmony 三方库中心获取 SDK。
- 在
entry目录中的oh-package.json5文件中添加 SDK 依赖,然后点击 Sync Now。
JSON
// entry 目录中的 oh-package.json5
{
"name": "entry",
"version": "1.0.0",
"description": "Please describe the basic information.",
"main": "",
"author": "",
"license": "",
"dependencies": {
"@rongcloud-enterprise/imlib": "x.y.z",
"@rongcloud-enterprise/rtclib": "x.y.z"
}
}
注意
- 各个 SDK 的最新版本号可能不相同,具体
x.y.z值可前往 融云官网 SDK 下载页面 或 OpenHarmony 三方库中心 查询。
-
安装 SDK 成功后,您可以在项目根目录的
oh_modules/.ohpm/目录中找到融云 RTCLib SDK。 -
查看更多其他融云 SDK,请打开 OpenHarmony 三方库中心,搜索关键字 rongcloud。
手动导入 SDK
- 在导入 SDK 前,您需要前往 融云官网 SDK 下载页面,将 SDK 下载到本地。
- 在项目根目录创建
libs文件夹,将 SDK 的 har 包放入其中。
命令行安装 SDK
- 在工程根路径下执行以下命令:
shell
ohpm install libs/rtclib.har
- 执行完成后,工程根路径的
oh-package.json5文件会自动添加 SDK 依赖。
JSON
// 工程根路径下的 oh-package.json5
{
"name": "xxx",
"version": "1.0.0",
"description": "Please describe the basic information.",
"main": "",
"author": "",
"license": "",
"dependencies": {
"@rongcloud/rtclib": "file:libs/rtclib.har", // 该配置由命令行生成
},
"devDependencies": {
"@ohos/hypium": "1.0.16",
"@ohos/hamock": "1.0.0"
}
}
entry 配置文件依赖 SDK
在 entry 同级目录的 oh-package.json5 文件中手动配置 SDK 依赖。
JSON
// entry 同级目录下的 oh-package.json5 需要手动配置
{
"name": "xxx",
"version": "1.0.0",
"description": "Please describe the basic information.",
"main": "",
"author": "",
"license": "",
"dependencies": {
"@rongcloud/imlib": "file:../libs/RongIMLib.har", // 该配置手动依赖
"@rongcloud/rtclib": "file:../libs/RTCLib.har" // 该配置手动依赖
},
"devDependencies": {
"@ohos/hypium": "1.0.16",
"@ohos/hamock": "1.0.0"
}
}
同步项目
在 entry/oh-package.json5 文件中点击 Sync Now 同步工程,同步成功后即可正常使用 RTCLib SDK。
提示
如果您同步之后依然无法导入 SDK,这可能是 DevEco Studio 的编译缓存导致的问题。您可以尝试把 DevEco Studio 完全关闭之后重新打开 APP 工程来解决问题。
配置项目
配置 useNormalizedOHMUrl
1.0.0 版本开始 SDK 支持字节码。为了支持字节码,应用需要在项目根路径的 build-profile.json5 文件中配置 useNormalizedOHMUrl。
JSON
// app 根路径下的 build-profile.json5
{
"app": {
"products": [
{
"buildOption": {
"strictMode": {
"useNormalizedOHMUrl": true
}
}
}
]
}
}
添加 SDK 依赖权限
SDK 需要权限如下:
| 权限名称 | 权限说明 | 使用目的 |
|---|---|---|
| ohos.permission.GET_NETWORK_INFO | 获取 网络信息 | 网络变化之后获取网络信息,进行 IM 重连 |
| ohos.permission.INTERNET | 使用网络 | 连接 IM、收发消息需要网络连接 |
| ohos.permission.MICROPHONE | 麦克风权限 | 音频通话需要麦克风采集能力 |
| ohos.permission.CAMERA | 摄像头权限 | 视频通话需要摄像头采集能力 |
- 找到项目
entry/src/main/目录下的module.json5文件,添加requestPermissions配置。以配置摄像头权限为例:
JSON
"requestPermissions": [
{
"name": "ohos.permission.CAMERA",
"reason": "$string:Camera",
"usedScene": {
"abilities": [
"EntryAbility",
],
"when": "always"
}
},
// ... 配置其他权限
]
具体权限配置参数含义,请参考鸿蒙的 应用权限管控文档。
- 配置权限时,需要考虑国际化问题。在项目
entry/src/main/resources/base/element目录下找到string.json文件 ,对应增加配置字符变量。以配置摄像头字符变量为例:
JSON
{
"string": [
{
"name": "Camera",
"value": "Camera in RTC"
}
// ... 定义其他
]
}