BrightcovePlayer類
的BrightcovePlayer類駐留在Android的核心Brightcove SDK中,並擴展了Android的活動類。
作為基本Activity
,BrightcovePlayer
類包裝一個BrightcoveExoPlayerVideoView
並設置一個EventLogger
和默認MediaController
。它實現了基本的生命週期管理和全屏邏輯。它應該被子類化。
public class MainActivity extends BrightcovePlayer {
...
}
至少onCreate()
方法應使用邏輯來覆蓋BrightcoveExoPlayerVideoView
變量layout.xml文件。例如:
brightcoveVideoView = (BrightcoveExoPlayerVideoView) findViewById(R.id.brightcove_video_view);
有關實現的詳細信息,請參見BasicSampleApp代碼示例。
支持庫組件
如果您選擇不使用BrightcovePlayer
班級BrightcovePlayerActivity
和BrightcovePlayerFragment
課程可供您使用。要使用這兩個類之一,您需要添加appcompat
您的插件build.gradle文件如下:
implementation "com.brightcove.player:android-appcompat-plugin:${anpVersion}"
BrightcovePlayerFragment類
的BrightcovePlayerFragment類擴展了android.support.v4.app.Fragment類。
如果要將Brightcove Player與佈局中的其他設計元素結合在一起,則可以使用BrightcovePlayerFragment
類。當為平板電腦或更大的屏幕(具有更多的空間來組合UI組件)進行設計時,這很有用。例如,使用平板電腦,您可以同時顯示多個片段,它們都位於同一活動中。
public class MainFragment extends BrightcovePlayerFragment {
...
}
的onCreateView()
應該擴展以將片段的佈局連接到baseVideoView
調用前的實例變量super.onCreateView()
。
baseVideoView = (BaseVideoView) result.findViewById(R.id.brightcove_video_view);
有關實現的詳細信息,請參見AppCompatFragmentSampleApp代碼示例。
BrightcovePlayerActivity類
的BrightcovePlayer活動類擴展了android.support.v7.app.AppCompatActivity類。
如果您選擇使用活動,則可以使用BrightcovePlayerActivity
類。
public class MainActivity extends BrightcovePlayerActivity {
...
}
有關實現的詳細信息,請參見AppCompatActivitySampleApp代碼示例。
生命週期管理
最佳做法是從BrightcovePlayer
活動或BrightcovePlayerFragment
,因為它們提供了默認的生命週期管理實施,包括以下內容:
- 當用戶暫停應用程序時,該類會跟踪他們停止的位置。
- 當您的應用從後台返回時,班級會記住視頻是否正在播放,並從中斷處重新開始播放。
- 如果您的應用由於內存問題而被終止,則該課程將嘗試在視頻中計時至原處。
- 設置了事件記錄器,該事件記錄器將所有事件記錄到logcat中。這對於調試很有幫助。
- 該類調度事件以與插件進行通信。
現在您已經有了一個活動,您可以選擇一個視頻視圖,如下一個文檔中所述。