El usuario se toca rápidamente en MediaController. El error sólo ocurre en Nexus 4.
En mi actividad tengo un VideoView que debe mostrar un MediaController en el tacto. Si el usuario toca rápidamente en el Controlador mientras VideoView no está siguiendo, después de que el usuario presione el botón Atrás, entonces mi aplicación se quedará atascada.
setContentView(R.layout.activity_play_video_fullscreen); videoView = (VideoView) findViewById(R.id.video_view); urlString = getIntent().getStringExtra(EXTRA_URL); videoView.setVideoURI(Uri.parse(urlString)); videoView.setOnPreparedListener(new OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { // video ready to play - hide progress bar ProgressBar pb = (ProgressBar)findViewById(R.id.progress_bar); pb.setVisibility(ProgressBar.INVISIBLE); } }); videoView.setOnCompletionListener(new OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { // video finished - terminate this activity AxUtils.axLog(AxUtils.eDbgLogError, AxUtils.eDbgLogGroupDialer, String.format("PlayVideoFullsreenActivity.videoView.onCompletion(): Fullscreen video playback completed.\n")); finish(); } }); // install our own error handler videoView.setOnErrorListener(new OnErrorListener() { @Override public boolean onError(MediaPlayer mp, int what, int extra) { AxUtils.axLog(AxUtils.eDbgLogError, AxUtils.eDbgLogGroupDialer, String.format("PlayVideoFullsreenActivity.videoView.onError(): Playback failed. what=%d(%s) extra=%d(%s)\n", what, what_toString(what), extra, extra_toString(extra))); String reason; if (what == MediaPlayer.MEDIA_ERROR_SERVER_DIED) { reason = "Server connection lost."; } else { reason = extra_toString(extra); } String message = String.format("Playback Failed. %s", reason); Toast.makeText(PlayVideoFullscreenActivity.this.getApplicationContext(), message, Toast.LENGTH_SHORT).show(); finish(); return true; } }); // add playback controls mediaController = new MediaController(this); mediaController.setAnchorView(videoView.getRootView()); videoView.setMediaController(mediaController);
- ¿Cómo volver a colocar el MediaController?
- Android mediacontroller Play Pausar controles no actualizar correctamente
- Posicionamiento de MediaController
- Reproductor multimedia con YouTube?
- Controlador de medios Android muestra la pantalla durante un corto período de tiempo
- Android MediaController intercepta todos los demás eventos táctiles
- Android: ¿Cómo usar mediaController en la clase de servicio?
- El video no se reproduce en Android
- Añadir vista en la parte superior de MediaController
- (Contexto, Token) en la instancia de MediaController
- El botón de retroceso de Android no funciona mientras se reproduce vídeo en VideoView
- Android quita los botones Fastforward y rebobinar de mediaplayer
- ¿Cómo se utiliza MediaControllerCompat para controlar el reproductor actual?
En las listas preparadas, deshabilite y active los controladores de medios. Debe resolver su problema.
Buena suerte.
- ¿Cuál es el uso de las preferencias compartidas en Android?
- Android juego rpg inventario del sistema