/** * 播放状态
* -1 播放错误
* 0 播放未开始
* 1 播放准备中
* 2 播放准备就绪
* 3 正在播放
* 4 暂停播放
* 5 正在缓冲(播放器正在播放时,缓冲区数据不足,进行缓冲,缓冲区数据足够后恢复播放)
* 6 暂停缓冲(播放器正在播放时,缓冲区数据不足,进行缓冲,此时暂停播放器,继续缓冲,缓冲区数据足够后恢复暂停
* 7 播放完成
* 8 开始播放中止
* @param playState 播放状态,主要是指播放器的各种状态
*/
@Override
public void onPlayStateChanged(int playState) {
switch (playState) {
case ConstantKeys.CurrentState.STATE_IDLE:
//播放未开始,初始化
break;
case ConstantKeys.CurrentState.STATE_START_ABORT:
//开始播放中止
break;
case ConstantKeys.CurrentState.STATE_PREPARING:
//播放准备中
break;
case ConstantKeys.CurrentState.STATE_PREPARED:
//播放准备就绪
break;
case ConstantKeys.CurrentState.STATE_ERROR:
//播放错误
break;
case ConstantKeys.CurrentState.STATE_BUFFERING_PLAYING:
//正在缓冲
break;
case ConstantKeys.CurrentState.STATE_PLAYING:
//正在播放
break;
case ConstantKeys.CurrentState.STATE_PAUSED:
//暂停播放
break;
case ConstantKeys.CurrentState.STATE_BUFFERING_PAUSED:
//暂停缓冲
break;
case ConstantKeys.CurrentState.STATE_COMPLETED:
//播放完成
break;
}
}
});
``` } @Override public void onChildViewDetachedFromWindow(@NonNull View view) { FrameLayout playerContainer = view.findViewById(R.id.player_container); View v = playerContainer.getChildAt(0); if (v != null && v == mVideoView && !mVideoView.isFullScreen()) { //销毁视频 releaseVideoView(); } }});```private void releaseVideoView() { mVideoView.release(); if (mVideoView.isFullScreen()) { mVideoView.stopFullScreen(); } if(getActivity().getRequestedOrientation() != ActivityInfo.SCREEN_ORIENTATION_PORTRAIT) { getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); } mCurPos = -1;}```//必须设置player2.setUrl(VOD_URL_2);VideoPlayerBuilder.Builder builder2 = VideoPlayerBuilder.newBuilder();builder.setEnableAudioFocus(false);VideoPlayerBuilder videoPlayerBuilder2 = new VideoPlayerBuilder(builder2);player2.setVideoBuilder(videoPlayerBuilder2);BasisVideoController controller2 = new BasisVideoController(this);player2.setController(controller2);mVideoViews.add(player2);```@Overrideprotected void onResume() { super.onResume(); for (VideoPlayer vv : mVideoViews) { vv.pause(); }}@Overrideprotected void onDestroy() { super.onDestroy(); for (VideoPlayer vv : mVideoViews) { vv.release(); }}@Overridepublic void onBackPressed() { for (VideoPlayer vv : mVideoViews) { if (vv.onBackPressed()) return; } super.onBackPressed();}``` @Override public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) { super.onScrolled(recyclerView, dx, dy); if (dy>0){ //表示下滑 mIsReverseScroll = false; } else { //表示上滑 mIsReverseScroll = true; } } @Override public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) { super.onScrollStateChanged(recyclerView, newState); if (newState == VerticalViewPager.SCROLL_STATE_IDLE) { mPreloadManager.resumePreload(mCurPos, mIsReverseScroll); } else { mPreloadManager.pausePreload(mCurPos, mIsReverseScroll); } }});```









原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。