如果您想實現如微短劇情境效果,只需要播放器組件,可參考本文瞭解Android播放器SDK整合方案。如果您還有製作短視頻的需求,建議您使用Android端一體化SDK進行整合,否則可能會出現類重複的問題,從而導致編譯失敗。
環境要求
建議使用最新版本的 Android Studio。下載地址:Android Studio。
系統版本:支援Android 4.3及以上版本。
ABI 相容性:要求裝置架構為 armv7 或 arm64。
使用限制:Android播放器SDK不支援模擬器,整合完成後需要真機運行。
前提條件
步驟一:SDK整合
Gradle整合
請確保網路正常,並且可以正常訪問阿里雲Maven倉庫。
添加Maven配置。
Gradle 7.x 及以上版本整合
在專案的
setting.gradle檔案中進行如下配置:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() jcenter() // 即將停用,建議逐步替換為 mavenCentral() maven { url "https://maven.aliyun.com/repository/releases" } } }dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() jcenter() // 即將停用,建議逐步替換為 mavenCentral() maven("https://maven.aliyun.com/repository/releases") } }Gradle 7.x 及以下版本整合
在專案的
build.gradle檔案中進行如下配置:allprojects { repositories { google() mavenCentral() jcenter() // 即將停用,建議逐步替換為 mavenCentral() maven { url "https://maven.aliyun.com/repository/releases" } } }allprojects { repositories { google() mavenCentral() jcenter() // 即將停用,建議逐步替換為 mavenCentral() maven("https://maven.aliyun.com/repository/releases") } }
引入播放器SDK。
修改App的build.gradle檔案,dependencies節點中增加播放器SDK。樣本如下:
說明請確保引入的播放器SDK版本號碼填寫正確,否則將報錯並引入失敗。播放器SDK的版本可以從Android播放器SDK發布歷史查看。
dependencies { // AliPlayer 播放器SDK implementation 'com.aliyun.sdk.android:AliyunPlayer:7.10.0-full' }dependencies { // AliPlayer 播放器SDK implementation("com.aliyun.sdk.android:AliyunPlayer:7.9.0-full") }
本地整合
如果由於網路故障,無法從Maven倉庫下載到播放器SDK包,則建議通過本地整合方式來整合SDK。
以下步驟以Android Studio Flamingo | 2022.2.1版本的Android Studio開發工具為例,其餘開發工具的操作步驟類似。
拷貝需要的aar包到工程的libs目錄下(如果沒有libs檔案夾,手動建立libs檔案夾即可)。

修改Project下的build.gradle檔案,在allprojects的repositories節點中增加flatDir的設定,樣本如下:
flatDir { dirs 'libs' }修改App的build.gradle檔案,dependencies節點中增加對aar的引用和Conan的引用,樣本如下:
dependencies { implementation fileTree(dir: 'libs', include: ['*.aar']) }
超低延時直播整合(可選)
如果您需要整合RTS超低延時直播組件,詳情請參見Android端實現RTS拉流。
步驟二:License配置
使用全球(不包含中國內地及港澳台)環境時,請選擇以下一種方式配置國際站環境。
方式一:調用下述介面更新預設配置為國際站環境。
// 使用全球(不包含中國內地及港澳台)環境時,請確保在調用任何播放器API之前,已調用下述介面更新預設配置為國際站環境,以確保後續所有業務都是在國際站環境下運行 // 通過AlivcBase統一介面,設定國際站環境,運行期間不支援修改 AlivcBase.getEnvironmentManager().setGlobalEnvironment(AlivcEnv.GlobalEnv.ENV_SEA);方式二(推薦):V7.6.0及以上播放器版本進行配置時,可通過
XML方法配置國際站環境。在
AndroidManifest.xml檔案中添加<meta-data>節點。<meta-data android:name="com.aliyun.alivc_env" android:value="SEA"/>配置樣本如下:

在Android端接入License,詳情請參見Android端接入License。
步驟三:許可權配置
在 app/src/main/AndroidManifest.xml 中聲明所有需要的許可權:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />步驟四:混淆配置
可以在混淆規則檔案(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日誌。
// 開啟日誌開關
Logger.getInstance(context).enableConsoleLog(true);
// 設定記錄層級,預設為AF_LOG_LEVEL_INFO,如需排查問題,可設定為AF_LOG_LEVEL_TRACE
Logger.getInstance(context).setLogLevel(Logger.LogLevel.AF_LOG_LEVEL_INFO);專案結構說明
檔案名稱 | 說明 |
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衝突。
常見整合問題
更多關於播放器使用過程中出現的問題及解決方案,請參見播放器常見問題匯總。