实现音视频会议
本教程将指导您快速实现音视频会议功能。通过本教程,您将学会如何创建多人音视频会议室,实现参会者之间的实时音视频通信。
开始前的准备:
- 注册融云开发者账户:前往融云官网注册开发者账户
- 获取 App Key:注册后系统将自动创建应用,请获取应用的 App Key 用于本教程
- 首次使用建议:如果您是首次使用融云音视频,建议先参考运行示例项目完成基础配置,以完成开发者账号注册、音视频服务开通等工作
环境说明
系统默认创建开发环境应用,使用国内数据中心。如需其他配置,请在控制台进行调整。
房间人数建议
考虑移动设备的带宽和 UI 交互效果,建议单次会议:
- 视频会议:不超过 16 人
- 纯音频会议:不超过 32 人
超过此上限可能影响会议质量和用户体验。
环境要求
在开始开发前,请确保您的开发环境满足以下要求:
Android 版本要求:
- SDK ≥ 5.6.3:Android 5.0(API 21)或更高版本
- SDK < 5.6.3:Android 4.4(API 19)或更高版本(推荐 Android 5.0)
开发工具要求:
- Android Studio 3.0 或更高版本
步骤 1:开通音视频服务
在开始开发前,您需要为应用开通音视频直播服务。新创建的应用默认未开启音视频功能。
开通 方法: 登录融云控制台,选择您的应用,开通音视频服务和音视频直播服务。详细步骤请参考:开通音视频服务
生效时间
服务开通、关闭等设置完成后需要 15 分钟生效,请耐心等待。
步骤 2:导入 SDK
实现直播功能需要导入以下 SDK 库:
必须导入:
- RTCLib:音视频核心能力库
- IMLib:即时通讯能力库(提供信令通道)
可选导入:
- 美颜扩展库:提供美颜滤镜功能
- CDN 扩展库:支持 CDN 推流功能
详细导入步骤请参考:导入 SDK
步骤 3:配置代码混淆
如果您的应用启用了代码混淆,需要添加相应的混淆规则以确保 SDK 正常工作。
配置方法:
在 app/proguard-rules.pro 文件中添加以下配置:
Java
-keepattributes Exceptions,InnerClasses
-keepattributes Signature
#RongRTCLib
-keep public class cn.rongcloud.** {*;}
#RongIMLib
-keep class io.rong.** {*;}
-keep class cn.rongcloud.** {*;}
-keep class * implements io.rong.imlib.model.MessageContent {*;}
-dontwarn io.rong.push.**
-dontnote com.xiaomi.**
-dontnote com.google.android.gms.gcm.**
-dontnote io.rong.**
-ignorewarnings
重要提醒
未正确配置混淆规则可能导致 SDK 功能异常,请务必添加上述配置。
步骤 4:配置应用权限
直播功能需要网络、摄像头和麦克风等权限,您需要在应用中正确配置这些权限。
声明权限
在 AndroidManifest.xml 中添加以下权限声明:
xml
<!-- 网络相关权限 -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!-- 摄像头权限 -->
<uses-permission android:name="android.permission.CAMERA" />
<!-- 音频相关权限 -->
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />