Я реализовал следующий код, чтобы проверить воспроизведение видео с удаленного веб-сервера через его URL.
videoView = (VideoView)this.findViewById(R.id.videoView);
MediaController mc = new MediaController(this);
videoView.setMediaController(mc);
videoView.setVideoURI(Uri.parse("http://sayedhashimi.com/downloads/android/movie.mp4"));
videoView.requestFocus();
Код работает просто отлично, даже в эмуляторе Android. Я просто хотел бы знать, есть ли какой-нибудь слушатель (или обработчик), чтобы определить окончание воспроизводимого видео?
Обновление:
У меня есть следующий код:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(R.layout.player);
videoView = (VideoView)this.findViewById(R.id.videoView);
playVideo();
// video finish listener
videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
// not playVideo
// playVideo();
mp.start();
}
});
}
public void playVideo() {
MediaController mc = new MediaController(this);
videoView.setMediaController(mc);
videoView.setVideoURI(Uri.parse("http://sayedhashimi.com/downloads/android/movie.mp4"));
videoView.requestFocus();
}
Когда просто вызывается активность, видео работает нормально, но когда видео заканчивается, я бы хотел, чтобы оно воспроизводилось снова, чего не происходит.