我想将处理exoplayer的代码放入lifecycleOberserver类中,但是要初始化exoplayer,我需要编写这样的代码
void prepareExoPlayer(Context context,PlayerView exoPlayerView) {
if (context == null || exoPlayerView == null) {
return;
}
if (player == null) {
TrackSelection.Factory videoTrackSelectionFactory = new AdaptiveTrackSelection.Factory();
TrackSelector trackSelector = new DefaultTrackSelector(videoTrackSelectionFactory);
player = ExoPlayerFactory.newSimpleInstance(context,trackSelector);
ExtractorsFactory extractorsFactory = new DefaultExtractorsFactory();
DataSource.Factory dataSourceFactory =
new DefaultDataSourceFactory(
context,Util.getUserAgent(
context,context.getString(R.string.app_name)
)
);
MediaSource videoSource = new ExtractorMediaSource
.Factory(dataSourceFactory)
.setExtractorsFactory(extractorsFactory)
.createMediaSource(videoUri);
player.prepare(videoSource);
}
player.clearVideoSurface();
player.setVideoSurfaceView((SurfaceView) exoPlayerView.getVideoSurfaceView());
player.seekTo(player.getcurrentPosition() + 1);
exoPlayerView.setPlayer(player);
}