概覽
適用於 Android 的 Brightcove Native SDK 在主要版本 7 中可用,對其構建方式帶來了重要變化。此版本包括支持以下內容的新功能:
- HLS 直播的低延遲
- 安卓 12 兼容性
SDK 變更
通過此版本的 Android Native SDK,MediaPlayer
內容播放不再支持類。
安卓 12 兼容性
適用於 Android 的 Native SDK 現在提供 Android OS 12 兼容性,Android 12 中的所有功能都應按預期運行。Brightcove 建議您查看 Android 12 中的更改並根據需要修改您的應用程序代碼。
有關詳細信息,請參閱 Android 12 功能和更改列表 參考。
ExoPlayer升級
Native SDK for Android 7 包含新版本的 ExoPlayer,從 v2.14.2 升級到 v2.17.1。查看 ExoPlayer 庫版本的所有更新。
大多數 ExoPlayer 更改由適用於 Android 的 Native SDK 在內部處理,但公共 API 中反映了一些更改:
- 以下接口不再需要參數:
DrmSession<T extends ExoMediaCrypto>
- 以下接口不再需要參數:
ExoPlayerDrmSessionManager<T extends ExoMediaCrypto>
這
ExoPlayerDrmSessionManager
類現在公開了defaulDrmSessionManager
可在 MediaSource 對像中用於設置 DRM 會話管理器的對象- 在裡面
TrackSelectorHelper
類,不推薦使用以下方法:
並被替換為updateTracksSelectionArray(@Nullable TrackSelectionArray trackSelections)
updateTracksGroupInfos(@Nullable ImmutableList
trackGroupInfos)
- 在裡面
MediaSourceUtil
類,不推薦使用以下方法:
並被替換為findRenditionUrl(@NonNull HlsMasterPlaylist hlsMasterPlaylist, int trackType, @NonNull Format format)
findRenditionUrl(@NonNull HlsMultivariantPlaylist hlsMasterPlaylist, int trackType, @NonNull Format format)
在裡面
ExoAdPlayer
類,構造函數需要一個StyledPlayerView
代替PlayerView
- 以下類已棄用:
並被替換為DashAudioTrackSelector
ExoPlayerVideoDisplayComponent.setPeakBitrate(int)
- 以下類已棄用:
並被替換為DashPeakBitRateTrackSelector
ExoPlayerVideoDisplayComponent.setPeakBitrate(int)
- 以下類已棄用:
並被替換為HLSPeakBitrateTrackSelector
ExoPlayerVideoDisplayComponent.setPeakBitrate(int)
Gradle 和 Java 升級
升級 ExoPlayer 需要以下內容:
- 搖籃 7.4
- Java 11
使用適用於 Android 7 的 Native SDK,您必須同時升級這兩個環境依賴項。
插件更改
在此版本的 Android Native SDK 中,一些相關插件發生了變化。
演員表插件
在裡面GoogleCastComponent
類,以下方法現在返回void
代替PendingResult <RemoteMediaClient.MediaChannelResult>
.
loadItem(MediaQueueItem, int)
addItems(MediaQueueItem)
IMA 外掛程式
Google IMA SDK 依賴項已升級到 3.27.0。此升級包括對 Android 12 的支持。
SSAI插件
這SSAIComponent
現在支持使用 Brightcove VideoCloud VMAP XML 對像作為源。要將 VideoCloud VMAP XML 對像用作源,請調用SSAIComponent.processVideo(String vmapXmlString)
.