Problemas con LifeCycle Actividad con la reproducción de VideoView
-
20-09-2019 - |
Pregunta
Hola a todos me he encontré con otros problemas con VideoView
.
A continuación se reproduce el vídeo, y me puso dispositivo dormido, con el botón duro, onPause()
se llama. Pero es seguido por:
03-17 11:26:33.779: WARN/ActivityManager(884): Activity pause timeout for HistoryRecord{4359f620 com.package/com.package.VideoViewActivity}
Y luego tengo onStart()
/ onResume()
una y vídeo comienza a reproducirse. He tratar de mover el código en torno onStart()
/ onStop()
-. No parece hacer diferencia
código de ejemplo:
public class VideoViewActivity extends Activity {
private String path = "";
private VideoView mVideoView;
private static final String MEDIA_URL = "media_url";
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.videoview);
mVideoView = (VideoView)findViewById(R.id.surface_view);
path = getIntent().getStringExtra(MEDIA_URL);
}
@Override
public void onResume() {
super.onResume();
mVideoView.setVideoPath(path);
mVideoView.setMediaController(new MediaController(this));
mVideoView.requestFocus();
mVideoView.start();
}
@Override
public void onPause() {
super.onPause();
mVideoView.stopPlayback();
mVideoView.setMediaController(null);
}
}
Por qué está sucediendo? ¿Y cómo hago para dejar que?
No es una experiencia más grande de lo que pone el dispositivo a dormir y se inicia la reproducción de vídeo
Solución
OK, Parece que el comportamiento está relacionado con la actividad del ciclo de vida y el hecho de que VideoViewActivity se establece en el paisaje en el manifiesto. Adición
android:configChanges="keyboardHidden|orientation"
para que la actividad parece solucionar el problema y luego se pone a dormir dispositivo solamente onPause () llamada vs antes - se ejecutaron todos los métodos de ciclo de vida. Voy a hacer más pruebas para asegurarse de que lo arreglen ...