全部產品
Search
文件中心

ApsaraVideo VOD:快速整合

更新時間:Jan 01, 2025

本文介紹Android播放器SDK的環境要求、整合方式及使用參考。

環境要求

類別

說明

系統版本

支援Android 4.3及以上版本。

手機晶片

架構要求:

  • armv7。

  • arm64。

開發工具

推薦使用Android Studio,本文操作步驟基於Android Studio開發。下載地址:Android Studio

前提條件

  • 登入並擷取包含播放器授權的License檔案AliVideoCert-********.crt。具體操作,請參見擷取License

  • 本地整合SDK時,需要先下載Android播放器SDK包(包含了播放器SDK及Demo源碼),從V5.4.6.0版本開始Android播放器SDK提供了支援AndroidX和不支援AndroidX的Demo,請根據您的專案按需選擇下載,推薦下載使用最新版本。下載地址請參見播放器SDK

解壓後的目錄結構如下:

表 1. SDK包目錄結構

檔案名稱

作用

demo

播放器的Demo源碼。

JavaDoc

播放器API文檔。

sdk

播放器SDK的aar庫。sdk的目錄結構參見sdk目錄結構

X.X.XReleaseNote

版本說明。

表 2. sdk目錄結構

檔案名稱

說明

AliyunPlayer-x.x.x-full.aar

完整的aar包,包含了FFmpeg動態庫的包。

AliyunPlayer-x.x.x-part.aar

aar包,不包含FFmpeg的動態庫的包。

AlivcArtp-x.x.x.aar

支援artp協議,非必須。

AlivcArtc-x.x.x.aar

支援artc協議,非必須。

說明
  • 如果不整合短視頻SDK,直接依賴AliyunPlayer-x.xx.x-full.aar包即可。

  • 如果整合播放器的同時,也整合短視頻SDK,那麼播放器的SDK依賴AliyunPlayer-x.x.x-part包,同時使用共通的FFmpeg版本,即需要額外依賴com.aliyun.video.android:AlivcFFmpeg:x.x.x這個包。

  • 如果整合時使用了錯誤的SDK包,會導致FFmpeg衝突。

使用限制

Android播放器SDK不支援模擬器,整合完成後需要真機運行。

SDK整合(本地整合)

說明

以下步驟以Android Studio Flamingo | 2022.2.1版本的Android Studio開發工具為例,其餘開發工具的操作步驟類似。

  1. 拷貝需要的aar包到工程的libs目錄下(如果沒有libs檔案夾,手動建立libs檔案夾即可)。

    圖片

  2. 修改Project下的build.gradle檔案,在allprojects的repositories節點中增加flatDir的設定,樣本如下:

    flatDir {
       dirs 'libs'
    }
  3. 修改App的build.gradle檔案,dependencies節點中增加對aar的引用和Conan的引用,樣本如下:

    dependencies {
          implementation fileTree(dir: 'libs', include: ['*.aar'])
          //阿里雲播放器5.3.0 版本以前需要引入AlivcConan庫,5.3.0及其以後的版本不需要引入。
          implementation 'com.alivc.conan:AlivcConan:x.x.x'
    }
  4. 混淆配置。

    在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.**

SDK整合(Gradle整合)

說明

請確保網路正常,並且可以正常訪問阿里雲Maven倉庫。如果由於網路故障,無法從Maven倉庫下載到播放器SDK包,則建議通過本地整合方式來整合SDK,詳細請參見SDK整合(本地整合)

  1. 在Project的build.gradle中增加阿里雲的Maven地址依賴。樣本如下:

    maven { url "https://maven.aliyun.com/repository/releases" }

    操作後的截圖如下:2024-07-17_165101.png

  2. 修改App的build.gradle檔案,dependencies節點中增加依賴。樣本如下:

    說明

    請確保引入的播放器SDK版本號碼填寫正確,否則將報錯並引入失敗。播放器SDK的版本可以從Android播放器SDK發布歷史查看。

    implementation 'com.aliyun.sdk.android:AliyunPlayer:x.x.x-full'
    //阿里雲播放器5.3.0 版本以前需要引入AlivcConan庫,5.3.0及其以後的版本不需要引入
    implementation 'com.alivc.conan:AlivcConan:x.x.x'

    操作後的截圖如下:結果

Android端接入License

  1. 配置License。

    1. (推薦)將認證檔案拷貝到Android Studio專案中的assets目錄下。

      說明

      您也可以將認證檔案複製到裝置中的其他位置,但要保證下一步中com.aliyun.alivc_license.licensefile(全球環境)或com.aliyun.alivc_license.licensefile_SEA(國際站環境)對應的value的值和License的路徑保持一致。

    2. 在AndroidManifest.xml檔案中添加<meta-data>節點。

      重要
      • 若配置License後校正失敗,您可以檢查<meta-data>節點是否處於<application>元素下面,且<meta-data>的name是否正確。若未能解決問題,您可以參考License相關常見問題進行排查。

      • 針對國際站使用者,若需使用播放器SDK,且播放器SDK為6.14.0及以上版本,請務必配置國際站環境License;若不使用播放器SDK,可以僅配置全球環境License。

      • 您可以同時接入2套License(1套全球環境License,1套國際站環境License),後續在App每次啟動後,通過配置播放器SDK的服務環境,來指定播放器的運行環境。播放器運行過程中,不支援切換環境。

      License配置-android-EN3.png

      // 全球環境配置License(預設配置)
      <meta-data
          android:name="com.aliyun.alivc_license.licensekey"
          android:value="foIVziMaUHaRqgDyhf6b6eb8fcf014af39535d0720a32****"/>  <!-- TODO:請設定您的 LicenseKey值-->
      <meta-data
          android:name="com.aliyun.alivc_license.licensefile"
          android:value="assets/cert/release.crt"/>  <!-- TODO:請設定您的 LicenseFile檔案路徑-->
      
      
      // 國際站環境配置License,手動在末尾添加_SEA
      <meta-data
          android:name="com.aliyun.alivc_license.licensekey_SEA"
          android:value="f6b6foIVziMaUHaRqgDyheb8fcf014af39535d0a32720****"/>  <!-- TODO:請設定您的 LicenseKey值-->
      <meta-data
          android:name="com.aliyun.alivc_license.licensefile_SEA"
          android:value="assets/cert/release.crt"/>  <!-- TODO:請設定您的 LicenseFile檔案路徑-->
  2. 配置播放器SDK的服務環境(使用國際站環境必配)。

    播放器SDK自6.14.0版本開始支援選擇服務環境,6.14.0及以上版本的播放器SDK預設為全球環境配置,如需使用國際站環境(目前國際站使用者僅支援使用國際站環境),則須在每次App啟動後,按照下述方法將播放器SDK配置更新為國際站環境,否則播放器SDK的License會鑒權失敗;其他版本及SDK的使用情境下,可忽略此步驟。

    // 使用國際站環境時,請確保在調用任何播放器API之前,已調用下述介面更新預設配置為國際站環境,以確保後續所有業務都是在國際站環境下運行
    // 通過AlivcBase統一介面,設定國際站環境,運行期間不支援修改
    AlivcBase.getEnvironmentManager().setGlobalEnvironment(AlivcEnv.GlobalEnv.ENV_SEA);

常見整合問題

播放器問題

功能使用文檔

基礎功能

進階功能