Android端

本文介绍如何在Android端快速集成MediaBox音视频SDK。

注意事项

若您需要从v6.6.0及以下版本的SDK升级到v6.7.0(含)以上版本,详情请参见关于音视频终端SDK V6.7.0版本美颜特效集成变更公告

环境要求

类别

说明

开发工具

推荐使用Android Studio,下载地址:Android Studio

Android版本

支持Android 5.0及以上版本。

步骤一:集成SDK

Maven集成(推荐)

  1. 修改项目的build.gradle文件,添加Maven仓库地址。

    maven { url "https://maven.aliyun.com/nexus/content/repositories/releases" }
  2. 修改App的build.gradle文件,在dependencies节点中添加SDK依赖。

    本文中引入的SDK版本号仅供参考,获取最新的版本请参见场景SDK

    //下面4种场景组合,请根据自己的业务需要,选择一种接入即可
    
    //1.标准一体化SDK:播放器 + 超低延迟直播 + 直播 + 短视频 + RTC连麦 + 基础美颜
    implementation 'com.aliyun.aio:AliVCSDK_Standard:6.17.0'
    //2.基础直播SDK:播放器 + 直播推流 + 基础美颜 + 超低延迟直播
    implementation 'com.aliyun.aio:AliVCSDK_BasicLive:6.17.0'
    //3.短视频场景SDK:播放器 + 短视频 + 基础美颜
    implementation 'com.aliyun.aio:AliVCSDK_UGC:6.17.0'
    //4.互动直播SDK:播放器 + 超低延迟直播 + 直播推流 + RTC连麦 + 基础美颜
    implementation 'com.aliyun.aio:AliVCSDK_InteractiveLive:6.17.0'

手动集成

  1. 下载Android端指定场景SDK

  2. 复制SDK文件*.aar到App模块下的libs文件夹。

  3. 修改项目的build.gradle文件,在allprojectsrepositories节点中增加flatDir配置。

    flatDir {
       dirs 'libs'
    }
  4. 修改App的build.gradle文件,在dependencies节点中增加aar的引用。

    dependencies {
          implementation fileTree(dir: 'libs', include: ['*.aar'])
    }

步骤二:配置License授权

首次接入SDK,需要申请License配置License授权

步骤三:配置App权限

修改App的src/main/AndroidManifest.xml文件,配置App权限。

<!-- 短视频权限配置-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.RECORD_VIDEO" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<!-- 直播权限配置-->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.REORDER_TASKS" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />  <!-- 添加录音权限-->
<uses-permission android:name="android.permission.CAMERA" />  <!-- 添加相机权限-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

步骤四:配置混淆规则

修改App的proguard-rules.pro文件,添加混淆规则。

######################播放器混淆配置#########################
-keep class com.alivc.**{*;}
-keep class com.aliyun.**{*;}
-keep class com.cicada.**{*;}
-dontwarn com.alivc.**
-dontwarn com.aliyun.**
-dontwarn com.cicada.**

######################短视频混淆配置#########################
-keep class com.aliyun.**{*;}
-keep class com.duanqu.**{*;}
-keep class com.qu.**{*;}
-keep class com.alibaba.**{*;}
-keep class component.alivc.**{*;}
-keep class com.alivc.**{*;}
-keep class org.webrtc.**{*;}
-keep class org.ugsv.**{*;}

######################直播混淆配置#########################
-keep class com.alivc.** { *;}
-keep class com.aliyun.rts.network.* { *;}
-keep class org.webrtc.ali.** {*;}
-keep class org.webrtc.utils.** {*;}

常见问题

请参见常见问题下各功能模块章节。