Android端

更新时间: 2023-11-09 13:13:43

通过阅读本文,您可以了解如何在Android端快速集成MediaBox音视频SDK,以适应不同的业务场景。

环境要求

类别

说明

开发工具

推荐使用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

    //下面8种组合,请根据自己的业务需要,选择一种接入即可
    
    //1.基础直播:直播推流+播放器
    implementation 'com.aliyun.aio:AliVCSDK_BasicLive:6.6.0'
    //2.基础直播:直播推流+播放器+美颜特效
    implementation 'com.aliyun.aio:AliVCSDK_StandardLive:6.6.0'
    //3.互动直播:直播推流(含超低延时直播、RTC连麦)+播放器
    implementation 'com.aliyun.aio:AliVCSDK_InteractiveLive:6.6.0'
    //4.互动直播:直播推流(含超低延时直播、RTC连麦)+播放器+美颜特效
    implementation 'com.aliyun.aio:AliVCSDK_PremiumLive:6.6.0'
    //5.短视频:短视频+播放器
    implementation 'com.aliyun.aio:AliVCSDK_UGC:6.6.0'
    //6.短视频:短视频+播放器+美颜特效
    implementation 'com.aliyun.aio:AliVCSDK_UGCPro:6.6.0'
    //7.全功能:直播推流(含超低延时直播、RTC连麦)+短视频+播放器
    implementation 'com.aliyun.aio:AliVCSDK_Standard:6.6.0'
    //8.全功能:直播推流(含超低延时直播、RTC连麦)+短视频+播放器+美颜特效
    implementation 'com.aliyun.aio:AliVCSDK_Premium:6.6.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.** {*;}

常见问题

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

阿里云首页 音视频终端 SDK 相关技术圈