全部产品
云市场

工程配置

更新时间:2019-07-31 16:30:04

系统版本

支持Android4.3及以上版本

开发环境

支持JAVA1.7及以上版本、ANDROID SDK API LEVEL 18及以上版本

接口文档

中文版请访问:接口文档

英文版请访问:API Reference

SDK版本

短视频SDK分为专业版,标准版和基础版,版本之间的差异见短视频SDK产品介绍

SDK集成

SDK通过Maven方式集成(推荐方式)

添加阿里云Maven仓库

build.gradle中添加Maven仓库地址:

  1. allprojects {
  2. repositories {
  3. maven {
  4. url 'http://maven.aliyun.com/nexus/content/repositories/releases/'
  5. }
  6. }
  7. }

基础版

在Maven项目中加入基础版依赖项(推荐方式)

  1. dependencies {
  2. implementation 'com.aliyun.video.android:svideosnap:3.11.0'//短视频基础版SDK必须依赖
  3. implementation 'com.aliyun.video.android:core:1.2.1' //核心库必须依赖
  4. implementation 'com.alivc.conan:AlivcConan:0.9.5.1'//核心库必须依赖
  5. implementation 'com.aliyun.video.android:AlivcSvideoFFmpeg:1.0.1'//必须依赖
  6. implementation 'com.aliyun.video.android:upload:1.5.3'// 上传库,如不需要上传可不依赖
  7. }

标准版

在Maven项目中加入标准版依赖项(推荐方式)

  1. dependencies {
  2. implementation 'com.aliyun.video.android:svideostandard:3.11.0'//短视频标准版SDK必须依赖
  3. implementation 'com.aliyun.video.android:core:1.2.1' //核心库必须依赖
  4. implementation 'com.alivc.conan:AlivcConan:0.9.5.1'//核心库必须依赖
  5. implementation 'com.aliyun.video.android:AlivcSvideoFFmpeg:1.0.1'//必须依赖
  6. implementation 'com.aliyun.video.android:upload:1.5.3'// 上传库,如不需要上传可不依赖
  7. }

专业版

在Maven项目中加入专业版依赖项(推荐方式)

  1. dependencies{
  2. implementation 'com.aliyun.video.android:svideopro:3.11.0'//短视频专业版SDK必须依赖
  3. implementation 'com.aliyun.video.android:core:1.2.1' //核心库必须依赖
  4. implementation 'com.alivc.conan:AlivcConan:0.9.5.1'//核心库必须依赖
  5. implementation 'com.aliyun.video.android:AlivcSvideoFFmpeg:1.0.1'//必须依赖
  6. implementation 'com.aliyun.video.android:upload:1.5.3'// 上传库,如不需要上传可不依赖
  7. }

注意,目前短视频SDK仅包含armeabi-v7a和arm64-v8a指令集的SDK,如需要armeabi的指令集的so建议直接通过armeabi-v7a的so拷贝至armeabi以此兼容。需要说明的是考虑到Android的发展和短视频SDK支持仅4.3以上,所以ARMv5、ARMv6 设备兼容意义不大。

SDK手动集成

  1. 导入aara. 选择File - New - Newmodule,如下图所示,以Library的形式新建Module,示例名:AliyunSvideoLibrary new module

    b.将下载的SDK目录中的AliyunSdk-RCE.aar、AlivcConan-x.x.x.aar、AlivcCore.jar拷贝至新建的Module以module的方式添加到工程中。sdk

    c.通过gradle将AAR和jar包添加依赖

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

    d. 如下所示,在app module中添加AliyunSvideoLibrary Module的依赖。

  1. dependencies {
  2. implementation project(":AliyunSvideoLibrary")
  3. }
  1. 导入.so文件

    a. 将SDK解压包中的jniLibs目录拷贝到app module的main目录中,并且在app module的build.gradle文件中声明jniLibs的路径,如下:

    1. android {
    2. sourceSets.main {
    3. jni.srcDirs = []
    4. jniLibs.srcDir "src/main/jniLibs"
    5. }
    6. }

    b. SDK需要加载的动态链接库,在最新的版本中已经在sdk内部加载,不需要用户手动加载,库文件说明如下:

    1. libalivcffmpeg.so-------------SDK依赖的第三方库(必须load
    2. libaliresample.so-------------------音频重采样相关的库(不需要可以去掉)
  2. 添加上传依赖项短视频上传需要依赖上传SDK及OSS,如不需要可不依赖

    1. implementation 'com.aliyun.video.android:upload:1.5.3'
    2. implementation 'com.google.code.gson:gson:2.8.0'
    3. implementation 'com.squareup.okhttp3:okhttp:3.2.0'
    4. implementation 'com.aliyun.dpa:oss-android-sdk:+'
  3. 初始化相关配置在App的Application类onCreate方法中调用

    1. com.aliyun.vod.common.httpfinal.QupaiHttpFinal.getInstance().initOkHttpFinal();

权限要求

  1. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  2. <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
  3. <uses-permission android:name="android.permission.CAMERA" />
  4. <uses-permission android:name="android.permission.FLASHLIGHT" />
  5. <uses-permission android:name="android.permission.RECORD_VIDEO" />
  6. <uses-permission android:name="android.permission.RECORD_AUDIO" />
  7. <uses-permission android:name="android.permission.INTERNET" />
  8. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

Android 6.0以上系统需要做动态权限请求。

混淆配置

  1. ######################短视频混淆配置#########################
  2. -keep class com.aliyun.**{*;}
  3. -keep class com.duanqu.**{*;}
  4. -keep class com.qu.**{*;}
  5. -keep class com.alibaba.**{*;}
  6. -keep class component.alivc.**{*;}
  7. -keep class com.alivc.**{*;}