Problemi con LifeCycle attività con la riproduzione VideoView
-
20-09-2019 - |
Domanda
Ciao a tutti ho incontrato un altro problemi con VideoView
.
Poi il video è in riproduzione, e ho messo dispositivo addormentato, con il pulsante duro, onPause()
si chiama. Ma è seguito da:
03-17 11:26:33.779: WARN/ActivityManager(884): Activity pause timeout for HistoryRecord{4359f620 com.package/com.package.VideoViewActivity}
E poi ho ancora onStart()
/ onResume()
e video inizia la riproduzione. Ho tenta di spostare il codice intorno onStart()
/ onStop()
-. Non sembra fare differenza
codice di esempio:
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);
}
}
Perché accade? E come faccio a smettere di che?
Non è una grande esperienza di te riporre il dispositivo a dormire e si avvia la riproduzione di video
Soluzione
OK, Sembra che il comportamento è legato all'attività del ciclo di vita e il fatto che VideoViewActivity è impostato su paesaggio nel manifesto. L'aggiunta di
android:configChanges="keyboardHidden|orientation"
per tale attività sembra risolvere il problema e poi si mette a dormire solo dispositivo onPause () chiamato vs prima - sono stati eseguiti tutti i metodi del ciclo di vita. Farò ulteriori test per assicurarsi che sia fissato ...