Skip to content

reconnectAndRestart

xinbaicheng edited this page Jun 7, 2016 · 9 revisions

使用场景

  1. onError或者onCompletion回调
  2. 播放一个新视频

方法

可根据实际情况选择使用以下方法

1.使用reload
2.重置播放器(重连)

SurfaceHolder mSurfaceHolder; // 在SurfaceChanged时保存SurfaceHolder

ksyMediaPlayer.reset();
ksyMediaPlayer.setDataSource(mUrl);
ksyMediaPlayer.prepareAsync();
ksyMediaPlayer.setDisplay(mSurfaceHolder); // 非常重要,reset之后需重新设置SurfaceHolder,播放器才能渲染

// 在onPrepared回调里
ksyMediaPlayer.start()

3.播放新的视频

// 释放播放器
ksyMediaPlayer.release();
ksyMediaPlayer = null;

// 创建播放器
ksyMediaPlayer = KSYMediaPlayer.Builder(mContext).build();
ksyMediaPlayer.setDataSource(mUrl);
ksyMediaPlayer.prepareAsync();

// 在onPrepared回调里
ksyMediaPlayer.start()
Clone this wiki locally