本文為您介紹Flutter播放器SDK的使用限制及整合方式等內容。
環境要求
類別 | 說明 |
Flutter版本 | 支援Flutter 3.22.2 • channel stable版本。 |
Dart版本 | 支援Dart 3.4.3 版本。 |
系統版本 | 支援Android 6.0以上版本。 |
手機晶片 | 架構要求:armeabi-v7a、arm64-v8a。 |
開發工具 |
SDK下載
阿里雲Flutter播放器SDK與Flutter SDK存在一定的配套關係,例如5.4.0版本的Flutter播放器SDK僅支援Flutter SDK 2.0及以上版本。具體各版本的配套資訊請參見Flutter SDK發布歷史。
Flutter SDK下載:Flutter SDK
阿里雲Flutter播放器SDK最新版下載:阿里雲播放器SDK
阿里雲Flutter播放器SDK外掛程式下載(播放器SDK的補丁版本更新):阿里雲Flutter播放器SDK外掛程式
專案說明
Flutter播放器SDK原生層的開發基於Android播放器SDK和iOS播放器SDK。目前已將源碼通過Demo依賴的方式透出,開發人員可以自行添加。
專案目錄結構如圖所示:
目錄檔案名稱及功能說明如下表所示。
檔案名稱 | 內容 | 是否必需 |
android | Android端原生代碼與播放器SDK。 | 是 |
ios | iOS端原生代碼與播放器SDK。 | 是 |
lib | Flutter端介面代碼。 | 是 |
example | Flutter播放器Demo。 | 否 |
由於Flutter播放器SDK同時包含了直播及播放器功能。如果您的專案中不需要用到直播相關內容,您可以將Flutter播放器SDK核心從一體化(直播+ 播放器)改為單播放器,以上述Demo為例:
Android端
在專案級build.gradle檔案中添加阿里雲Maven倉庫。
maven { url "https://maven.aliyun.com/nexus/content/repositories/releases" }將音視頻終端SDK(互動直播)替換為播放器SDK。
修改專案android/build.gradle檔案中的 useAIOFramework 變數。
useAIOFramework = false 時 使用 單播放器SDK + Android端實現RTS拉流useAIOFramework = true 時 使用 Android端(互動直播):直播推流(含超低延時直播、RTC連麥)+播放器。
dependencies { // 定義 SDK 核心 def useAIOFramework = false def aio_sdk_version = "x.x.x" // 音視頻終端SDK(互動直播)最新版本 def player_sdk_version = "x.x.x" // 播放器SDK最新版本 def rts_sdk_version = "x.x.x" // Rts低延時直播組件最新版本 // 根據 useAIOFramework 的值選擇相應的 SDK if (useAIOFramework) { // 音視頻終端SDK(互動直播):直播推流(含超低延時直播、RTC連麥)+播放器 implementation "com.aliyun.aio:AliVCSDK_InteractiveLive:$aio_sdk_version" } else { // 播放器SDK implementation "com.aliyun.sdk.android:AliyunPlayer:$player_sdk_version-full" //(可選) Rts低延時直播組件 SDK implementation "com.aliyun.rts.android:RtsSDK:$rts_sdk_version" //(可選) 播放器與RTS的橋接層(AlivcArtc),版本號碼需要與播放器一致,需要和 Rts低延時直播組件 一起整合 implementation "com.aliyun.sdk.android:AlivcArtc:$player_sdk_version" } }
iOS端
修改專案flutter_aliplayer.podspec檔案中的 useAIOFramework 變數。
useAIOFramework = false 時 使用 單播放器SDK + iOS端實現RTS拉流
useAIOFramework = true 時 使用 iOS端(互動直播):直播推流(含超低延時直播、RTC連麥)+播放器。
# 定義 SDK 核心
useAIOFramework = false
# 定義 SDK 版本
aio_sdk_version = 'x.x.x'
player_sdk_version = 'x.x.x'
rts_sdk_version = 'x.x.x'
# 根據 useAIOFramework 的值選擇相應的 SDK
if useAIOFramework
s.subspec 'AliVCSDKFrameworks' do |ss|
# 音視頻終端SDK(互動直播):直播推流(含超低延時直播、RTC連麥)+播放器
ss.dependency 'AliVCSDK_InteractiveLive', aio_sdk_version
end
else
s.subspec 'AliPlayerSDKFrameworks' do |ss|
# 阿里雲播放器獨立SDK
ss.dependency 'AliPlayerSDK_iOS', player_sdk_version
ss.dependency 'AliPlayerSDK_iOS_ARTC', player_sdk_version
ss.dependency 'RtsSDK', rts_sdk_version
end
end使用限制
Android播放器SDK不支援模擬器,整合完成後需要真機運行。
整合操作
以下步驟以1.65.2版本VS Code開發工具為例,其餘開發工具的操作步驟類似。
啟動VS Code開發工具。
選擇 。
輸入flutter後,選擇Flutter: New Project。
輸入Project名稱(如myapp),然後按斷行符號鍵。
指定放置專案的位置後,單擊藍色的確定按鈕。
等待專案建立,直到顯示main.dart檔案即表示專案建立完成。
整合阿里雲Flutter播放器SDK。
您可以通過整合依賴的方式,在專案中的pubspec.yaml檔案中引入flutter_aliplayer依賴,快速整合Flutter播放器SDK。
dependencies: flutter_aliplayer: ^7.0.0 # version為阿里雲Flutter播放器SDK的版本號碼,例如:7.0.0。在使用時,請根據使用的版本進行變更。可選:如果業務需要支援超低延時直播RTS,需要引用依賴。詳情請參見Flutter播放器。