[英]Android MediaPlayer seekTo after video finished playing
我將VideoView與MediaController和MediaPlayer一起使用來播放HLS流(正常的mp4文件不會出現此問題)。 當視頻播放完畢並且嘗試使用搜索欄時,出現logcat錯誤: E / MediaPlayer:錯誤(1,-1004) ,活動顯示無法播放此視頻對話框。 我該如何預防? 我已經嘗試過實現MediaPlayer.OnCompletionListener
接口,如下所示:
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
videoView.setVideoURI(Uri.parse(...));
videoView.start();
videoView.pause();
}
但這不起作用。
取決於您真正想要做什么以及視頻流如何工作:
如果您想循環播放視頻-因為您的onCompletion()嘗試這樣做-您可以嘗試使用setLooping(true)
進行更簡單的處理
最終,您可以改善錯誤處理,例如:
yourPlayer.setOnErrorListener(new MediaPlayer.OnErrorListener() { @Override public boolean onError(MediaPlayer mp, int what, int extra) { if (mp.isPlaying()) mp.stop(); mp.reset(); mp.play(); return true; } });
編輯:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.