trasos no onStop a serem chamados ao reiniciar a atividade
Quando reiniciar uma Atividade,onStop()
da atividade anterior atrasa demais para ser chamado.
Estou usando esse código para reiniciar minha atividade PlayerActivity.java
Intent playerIntent = getIntent();
playerIntent.putExtra(Constants.VIDEO_ID, videoId);
playerIntent.putExtra(Constants.CATEGORY_ID, categoryId);
playerIntent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
finish();
startActivity(playerIntent);
Vamos ligar PreviousPlayerActivity e NewPlayerActivity, a atividade anterior e a nova atividade. (lembrando que eles são a mesma PlayerActivity).
Seqüênci
Ao reiniciar o aplicativo, siga esse fluxo no ciclo de vida da atividad
PreviousPlayerActivity onPause() -->
NewPlayerActivity onCreate() -->
NewPlayerActivity onStart() -->
NewPlayerActivity onResume() -->
NewPlayerActivity performs a heavy operation -->
PreviousPlayerActivity onStop() -->
PreviousPlayerActivity onDestroy()
O que eu precis
Preciso que o PreviousPlayerActivity seja concluído destruído antes que o NewPlayerActivity seja iniciado. Contudo,onStop()
é chamado apenas após a operação pesada, por isso demora cerca de 10 segundos para ser chamad
O que eu tentei
Se eu usarrecreate()
destrói PreviousPlayerActivity antes de chamar NewPreviousActivity, mas chamandorecreate()
Não consigo colocarExtras na nova instância de atividad
Questõe
Como destruir completamente a PreviousActivity ao reiniciar uma atividade? Existe uma maneira de colocarExtras usandorecreate()
?