В моем примере у меня есть список видео-ссылок и следующие предыдущие кнопки. Когда я нажимаю на следующее, будет воспроизведено следующее видео из списка. Моя проблема в том, когда я нажимаю на следующий hVideoview.setVideoURI(Uri.parse(videoPath));
, вызывается, и требуется некоторое время, чтобы подготовиться. поэтому в этой продолжительности, если я снова нажму на следующую, вызывается следующая видеосвязь. В среднем, если предыдущее видео готово, его OnPreparedListener()
выполняются и запускают старое видео. то, что я хочу сделать, - это когда я нажимаю следующий предыдущий, все операции должны быть остановлены. А вот мой кодОстановить или отменить видеообзор, подготовленный
public void initializeVideo(final String videoPath)
{
BaseActivity.ShowLoading(this, "Buffering...");
hVideoview.setVisibility(View.VISIBLE);
lin_webview.setVisibility(View.GONE);
new Handler(Looper.myLooper()).post(new Runnable(){
@Override
public void run(){
hVideoview.setVideoURI(Uri.parse(videoPath));
}
});
hVideoview.setOnPreparedListener(new OnPreparedListener()
{
public void onPrepared(MediaPlayer mp)
{
mp.setOnBufferingUpdateListener(HighlightsActivity.this);
mp.setOnCompletionListener(HighlightsActivity.this);
BaseActivity.StopLoadingDialog();
hVideoview.requestFocus();
hVideoview.start();
mediaFileLengthInMilliseconds = hVideoview.getDuration();
seek_bar.setMax(mediaFileLengthInMilliseconds);
primarySeekBarProgressUpdater();
imgPlay.setVisibility(View.GONE);
imgPause.setVisibility(View.VISIBLE);
}
});
}
так есть ли способ остановить OnPreparedListener()
выполняется?
Я заинтересован в этом, как хорошо. Вы нашли решение? – Androidicus
Пожалуйста, проверьте это, если это помогает [http://stackoverflow.com/questions/16544891/mediaplayer-stop-release-while-prepareasync](http://stackoverflow.com/questions/16544891/mediaplayer-stop-release-while -prepareasync) –
Ответить здесь [Media stop, release while prepareasync] (http://stackoverflow.com/a/16545152/1185521) –