Android VideoView no reproduce videos secuenciales

Quiero reproducir 2 videos seguidos. El primer video siempre juega muy bien. Después de que termina, puede ver en el registro que establece la nueva URL de vídeo, pero SurfaceView lanza un error y el VideoView se congela con el último fotograma del primer vídeo. No pasa nada. Alguna idea ? Gracias !

LE: Sorprendentemente, el OnPreparedListener es llamado para el segundo video.

LE2: A veces el segundo video juega muy bien, a veces no lo hace … y no he cambiado una línea de código entre cuando funcionaba y cuando no. Es puramente aleatorio …

LE3: Solución rápida es agregar esta línea antes de configurar la URL del nuevo video:

mVideoView.setVisibility(View.GONE); 

Código de OnCompletionListener:

 setCurrentPlaybackUrl(); // sets mCurrentMediaUrl to the second video URL mVideoView.setVideoPath(mCurrentMediaUrl); mVideoView.start(); 

Esta es la salida de registro cuando el primer video finaliza la reproducción:

 10-22 12:32:35.762: I/AwesomePlayer(126): setDataSource_l('https://xx/TestingVideo_lo.mp4') 10-22 12:32:35.762: E/BufferQueue(123): [SurfaceView] connect: already connected (cur=3, req=3) 10-22 12:32:35.762: E/MediaPlayerService(126): setVideoSurfaceTexture failed: -22 10-22 12:32:35.762: E/BufferQueue(123): [SurfaceView] connect: already connected (cur=3, req=3) 10-22 12:32:35.762: E/MediaPlayerService(126): setVideoSurfaceTexture failed: -22 

    Prueba el onCompletion(MediaPlayer mp) , para agregar mp.stop() y luego haz tus cosas.

    EDIT: He intentado esto y está funcionando:

     videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { play_video(); } }); play_video(); 

    Donde play_video es el siguiente método:

     void play_video() { Uri uri = Uri.parse(video_link); videoView.setVideoURI(uri); videoView.requestFocus(); videoView.setVisibility(View.VISIBLE); videoView.start(); } 

    La única diferencia es que he jugado el mismo video dos veces, no dos videos diferentes.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.