实现音视频通话
CallKit 基于 CallLib SDK 基础增加了一套默认呼叫界面,包含了单人、多人音视频呼叫的各种场景和功能。
提示
房间人数上限
- 考虑移动设备的带宽(主要是在多路视频情况下)和 UI 交互效果,建议单次通话或房间内,视频不超过 16 人,纯音频不超过 32 人。超过此上限可能影响通话效果。
- CallKit 代码中已设置人 数上限。默认发起视频呼叫时,最多可选 7 人。发起音频呼叫时,最多可选 20 人。如需调整,建议勿超过建议上限。
环境要求
适用于 HarmonyOS 的 CallKit SDK 的最低要求是:
- DevEco Studio NEXT Release(5.0.3.900) 及以上。
- HarmonyOS SDK API 12 及以上。
- 手机系统版本号:NEXT.0.0.31
前置条件
- 创建融云开发者账号,获取 App Key。注册成功后,融云控制台会默认自动创建您的首个应用,默认生成开发环境下的 App Key,使用国内数据中心。注意:同一个应用的开发环境与生产环境提供不同的 App Key,两个环境之间数据隔离。
- 完成开通音视频服务。您需要开通音视频通话服务。
快速上手
步骤 1 导入 SDK
导入融云音视频通话能力 UI 库 CallKit 具体步骤请参阅 导入 CallKit SDK。
步骤 2 初始化
RTC 音视频能力是基于 IM 作为信令通道的,CallKit 又依赖于 IMKit & CallLib,所以要先初始化 IM 。如果不换 AppKey,在整个应用生命周期中,初始化一次即可。建议调用位置放在应用启动位置处,或在音视频功能模块的加载位置处。 在 UIAbility 的 onCreate()
方法中,调用初始化方法,传入生产或开发环境的 App Key。
TypeScript
// 在 UIAbility 中获取 context
let context = this.context
let initOption = new InitOption();
let appKey = "从融云后台获取的 appKey";
IMEngine.getInstance().init(context, appKey, initOption);