本文提供实时音视频原子ARTC SDK下载链接,介绍如何集成SDK,以及SDK相关信息。
SDK隐私权政策及合规使用说明
为了帮助您落实针对您的产品集成第三方SDK产品情况所应履行的隐私合规义务、降低隐私违规风险进而实现您的产品合规运营的业务目标,请您务必确保选用阿里云文档中心官网发布的最新版本产品,且务必确保用户同意您的产品《隐私政策》并取得用户授权同意后,再对您的产品中所集成的阿里云视频服务相关SDK进行初始化。在使用阿里云视频服务产品或服务前,请您务必仔细了解个人信息处理规则及合规使用等各项政策,相关详细内容,请阅读《阿里云视频服务隐私权政策》。
SDK集成
Android
环境准备
在集成 ARTC SDK 之前,请确保满足如下开发环境:
Android Studio 2020.3.1 及以上版本。
Android 5.0(SDK API Level 21)及以上版本的测试设备,且需要连接网络环境。
步骤一:导入SDK
Maven自动集成(推荐)
打开项目根目录下的
settings.gradle
文件,在dependencyResolutionManagement/repositories
字段中添加 ARTC SDK 所需的Maven地址,如下所示:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
// 添加ARTC SDK所在的Maven地址
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/public' }
}
}
注意,如果您使用的 Android Gradle Plugin 版本低于 7.1.0,可能无法在settings.gradle
文件中找到对应字段,相关信息请参考Android Gradle 插件 7.1。此时,请采用如下方案作为替换:
打开
app/build.gradle
文件,在dependencies
中添加对 ARTC SDK 的依赖,你可以在SDK下载中获取版本信息,并将${latest_version}
替换为具体版本号。
dependencies {
// 引入实时音视频SDK依赖
// ${latest_version}替换为具体版本号,例如7.5.0
implementation 'com.aliyun.aio:AliVCSDK_ARTC:${latest_version}'
// 7.4.0及以下版本需添加keep
// implementation 'com.aliyun.aio.keep:keep:1.0.1'
}
如果使用的 Android Gradle Plugin 为 8.1 以上版本,Android Studio 推荐将依赖库信息迁移到版本目录,相关信息请参考迁移依赖项目到版本目录。
下载SDK手动集成
在SDK下载中下载所需版本的 ARTC SDK aar 文件,例如
AliVCSDK_ARTC-7.3.0.aar
。将下载的 aar 文件拷贝到您的项目目录下,例如
app/libs
,如果没有该文件夹则新建。打开项目根目录下的
settings.gradle
文件,在dependencyResolutionManagement/repositories
下添加 aar 所在文件夹,如下所示:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
// 添加ARTC SDK所在位置的相对目录
flatDir {
dir 'app/libs'
}
}
}
注意,如果您使用的 Android Gradle Plugin 版本低于 7.1.0,可能无法在settings.gradle
文件中找到对应字段,相关信息请参考Android Gradle 插件 7.1。此时,请采用如下方案作为替换:
打开项目根目录下的build.gradle
文件,在allprojects/repositories
中添加如下字段:
allprojects {
repositories {
...
// 添加ARTC SDK所在位置的相对目录
flatDir {
dir 'app/libs'
}
}
}
打开
app/build.gradle
文件,在dependencies
下添加 aar 文件的依赖,如下所示:
implementation(name:'AliVCSDK_ARTC', version: '7.3.0', ext:'aar')
构建后即可在 External Libraries 下生成对应依赖。
步骤二:配置项目支持的 CPU 架构
打开app/build.gradle
文件,在defaultConfig
中指定项目支持的 CPU 架构,如下所示。可选架构包括armeabi-v7a、arm64-v8a、x86、x86_64
,根据实际需要进行配置。
android {
defaultConfig {
// ...其他默认配置
// 支持 armeabi-v7a 和 arm64-v8a 架构
ndk {
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
}
步骤三:设置权限
根据实际需求设置应用所需的权限,具体流程如下:
进入app/src/main
目录,打开AndroidManifest.xml
文件,添加所需权限。
<uses-feature android:name="android.hardware.camera" android:required="false" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- Request legacy Bluetooth permissions on older devices. -->
<uses-permission
android:name="android.permission.BLUETOOTH"
android:maxSdkVersion="30" />
<uses-permission
android:name="android.permission.BLUETOOTH_ADMIN"
android:maxSdkVersion="30" />
<!-- Needed only if your app communicates with already-paired Bluetooth devices. -->
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS"
tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
注意,Android 6.0(API 23)之后危险权限需要动态申请,除了在AndroidManifest.xml
文件中静态申请外,还需要在代码运行时请求权限。
其中部分权限需要动态申请, 需要动态申请的权限包含:
Manifest.permission.CAMERA
Manifest.permission.WRITE_EXTERNAL_STORAGE
Manifest.permission.RECORD_AUDIO
Manifest.permission.READ_EXTERNAL_STORAGE
Manifest.permission.READ_PHONE_STATE
当Android系统版本>=12(API_LEVEL>=31) 时, 需要额外动态申请以下权限:
Manifest.permission.BLUETOOTH_CONNECT
可能涉及到的部分权限说明如下:
权限名 | 权限说明 | 申请原因 | 必要性 | 是否动态权限 |
CAMERA | 摄像头权限。 | 访问设备摄像头以采集视频流。 | 是 | Android >= 6.0 |
RECORD_AUDIO | 麦克风权限。 | 访问设备麦克风以采集音频流。 | 是 | Android >= 6.0 |
INTERNET | 网络权限。 | 音视频数据通过网络传输(如 WebRTC等协议)。 | 是 | 否 |
ACCESS_NETWORK_STATE | 允许应用获取网络状态。 | 监控网络连接状态以优化音视频传输质量,例如断网重连。 | 按需 | 否 |
ACCESS_WIFI_STATE | 允许应用获取 WiFi 状态。 | 获取当前 WiFi 连接信息以优化网络性能。 | 按需 | 否 |
MODIFY_AUDIO_SETTINGS | 允许应用修改音频配置。 | 调整系统音量、切换音频输出设备等。 | 按需 | 否 |
BLUETOOTH | 蓝牙权限(基础功能) | 连接蓝牙设备(如蓝牙耳机)。 | 按需 | 否 |
BLUETOOTH_CONNECT | 蓝牙连接权限 | 与已配对的蓝牙设备进行通信(如传输音频流)。 | 按需 | android >= 12 |
READ_PHONE_STATE | 允许应用访问与设备电话状态相关的信息 | 根据电话状态启停音频。 | 按需 | android >= 6.0 |
READ_EXTERNAL_STORAGE | 允许应用读取外部存储中的文件。 | 播放本地音乐等。 | 按需 | android >= 6.0 |
WRITE_EXTERNAL_STORAGE | 允许应用写入外部存储。 | 保存音视频文件、日志等。 | 按需 | android >= 6.0 |
步骤四:防止混淆代码(可选)
在app/proguard-rules.pro
文件中,为 SDK 配置规则,防止 SDK 对外提供的接口被混淆导致无法正常调用。
-keep class com.aliyun.allinone.** {
*;
}
-keep class com.aliyun.rts.network.AliHttpTool {
*;
}
-keep class com.aliyun.common.AlivcBase {
*;
}
-keep class com.huawei.multimedia.alivc.** {
*;
}
-keep class com.alivc.rtc.** {
*;
}
-keep class com.alivc.component.** {
*;
}
-keep class org.webrtc.** {
*;
}
iOS
环境准备
在开始集成 ARTC SDK 之前,请确保开发环境满足以下要求:
Xcode 14.0 及以上版本,推荐使用最新正式版本。
CocoaPods 1.9.3 及以上版本。
准备 iOS 9.0 及以上版本的真机。
步骤一:导入SDK
CocoaPods 自动集成(推荐)
打开终端,在您的开发设备上安装 CocoaPods 工具,如果您已经完成安装,可以跳过此步骤。
sudo gem install cocoapods
打开终端,进入项目根目录,在终端窗口中输入以下命令,创建 Podfile 文件。
pod init
打开并编辑生成的 Podfile文件,添加RTC SDK依赖。
target 'MyApp' do
use_frameworks!
# 将${latest version}替换为具体的版本号,如7.3.0
pod 'AliVCSDK_ARTC', '~> ${latest version}'
end
在终端窗口中输入以下命令更新项目中的CocoaPods依赖库。
pod install
成功执行后,项目文件夹下将生成一个后缀为.xcworkspace后缀的工程文件,双击该文件通过 Xcode打开项目即可加载工作区自动集成 CocoaPods 依赖。
下载SDK手动集成
在SDK下载中,获取最新的 ARTC SDK 文件并解压。
将解压后的 SDK 包内的 framework 文件拷贝到项目目录下。
使用 Xcode 打开项目,选择
File -> Add Files to "xxx"
,菜单,添加 SDK 的库文件到项目。选择目标,将导入的 framework 文件设置为
"Embed & Sign"
。
步骤二:设置权限
务必添加录音权限和相机权限
在Info.plist文件中添加摄像头和麦克风权限Privacy - Camera Usage Description、Privacy - Microphone Usage Description。
开启音频后台采集模式(可选)。
如图所示,勾选Audio,AirPlay,and Picture in Picture即可。
Windows
环境准备
在开始集成 ARTC SDK 之前,请确保开发环境满足以下要求:
Visual Studio 2015 或以上版本。
WIndows 7 或以上版本。
集成SDK
在SDK下载,获取最新的 ARTC SDK 文件。
解压 ARTC SDK 文件,并将目录下的文件拷贝到您的项目中。
配置项目属性:
在解决方案资源管理器窗口中,右键单击项目,进入“属性”界面。
添加包含目录:选择配置属性(Configuration Properties) → C/C++ → 常规(General),在附加包含目录(Additional Include Directories)中添加头文件路径。
添加库目录:在 Properties 窗口中,选择配置属性(Configuration Properties) → 链接器( Linker)→ 常规(General),在附加库目录( Additional Library Directories) 中添加库文件(.lib)的路径,例如
.../x64/Release
。指定链接库文件:在 Properties 窗口中,选择配置属性(Configuration Properties)→ 链接器( Linker)→ 输入(Input),在附加依赖项(Additional Dependencies)中添加需要链接的库文件名“AliRTCSdk.lib”。
Linux
Harmony
环境准备
在开始集成阿里音视频SDK前,请确保开发环境满足以下要求:
已联系华为商务人员,签署合作计划,开通相关权限,获取 DevEco Studio 5.0.3.900 Release 或以上版本。
获取配套 API Version 12的 HarmonyOS NEXT SDK 或以上版本。
获取配套 API Version 12的 HarmonyOS NEXT 5.0.0.102 操作系统或以上版本,支持音视频的鸿蒙设备,且已开启“允许调试”选项。
如果需要使用真机调试,请参考 鸿蒙官网文档 进行配置。
鸿蒙设备已经连接到 Internet。
已 注册华为开发者账号 并完成实名认证。
集成SDK
ohpm自动集成(推荐)
在工程中配置:
"dependencies": {
"@aliyun_video_cloud/alivcsdk_artc":"6.11.0-beta",
}
运行命令:
ohpm install @aliyun_video_cloud/alivcsdk_artc
下载SDK手动集成
在SDK下载中下载最新版本的Harmony ARTC SDK ,放到工程libs中。在工程中配置引用:
"dependencies": {
"@aliyun_video_cloud/alivcsdk_artc":"file:./libs/AliVCSDK_ARTC-6.11.0-beta.har",
}
发布历史
版本号 | 平台 | 更新日期 | 修改内容 |
V7.5.0 | iOS | 2025-07-31 |
|
Android | |||
Linux | 2025-07-31 |
| |
v7.4.0 | iOS | 2025-07-01 |
|
Android | |||
Linux | |||
v7.3.0 | iOS | 2025-05-30 |
|
Android | |||
Linux | 2025-06-05 | ||
v7.2.1 | Windows | 2025-05-12 |
|
v7.2.0 | iOS | 2025-04-28 |
|
Android | |||
Linux | 2025-05-06 |
| |
v7.1.0 | iOS | 2025-04-01 |
|
Android | 2025-04-01 | ||
Linux | 2025-04-01 |
| |
v7.0.0 | iOS | 2025-02-28 |
|
Android | |||
Linux | 2025-03-11 |
| |
Windows | 2025-03-31 |
| |
v6.21.0 | Linux | 2025-01-24 |
|
v6.21.0 | iOS | 2025-01-22 |
|
Android | |||
v6.20.0 | iOS | 2024-12-30 |
|
Android | |||
v6.20.0 | Linux | 2024-12-31 |
|
v6.19.0 | iOS | 2024-12-20 |
|
Android | |||
v6.18.1 | Linux | 2024-12-11 |
|
v6.18.0 | iOS | 2024-12-09 |
|
Android | |||
v6.17.0 | iOS | 2024-11-04 |
|
Android | |||
Linux | 2024-12-02 |
| |
v6.15.0 | iOS | 2024-09-24 |
|
Android | |||
Windows |
| ||
v6.11.3 | iOS | 2024-09-14 | 针对AI+RTC场景,提供聊天室的AudioProfile,保证欢迎语完整播报。 |
Android | 2024-09-14 | ||
v6.11.2 | iOS | 2024-08-16 |
|
Android | |||
Linux | 2024-09-24 |
| |
v6.11.0-beta | Harmony | 2024-10-24 |
|
v6.11.0 | Linux | 2024-07-19 |
|
v6.8.7 | iOS | 2024-06-03 |
|
Android | |||
v6.8.5 | iOS | 2024-04-01 |
|
Android | |||
v6.8.2 | iOS | 2024-03-04 |
|
Android | |||
Linux | 2024-05-31 |
| |
v6.8.1 | Windows | 2024-03-19 |
|
v6.4.3 | iOS | 2023-12-04 |
|
Android |