O getIntent do Android em uma nova atividade é NULL quando a atividade de chamada é destruída
Vocês têm uma solução alternativa para o seguinte problema?
Na destruição de uma atividade de registro (quando o usuário pressiona o botão Voltar), chamo uma nova atividade para que o usuário possa inserir alguns dados finais de produção daquele dia e, em seguida, o relatório será enviado por e-mail. O problema é que, na atividade iniciada, a chamada para getIntent retorna nulo e eu tenho que obter os dados a partir daí.
public void onDestroy(){
//unregister listeners, cancel timers etc.
logOff();
super.onDestroy();
}
protected void logOff(){
// collect data etc.
// open new activity that asks for final production numbers
Intent intent = new Intent(getBaseContext(), AksProductionNumbers.class);
intent.putExtra("TimeSheetList", timeSheetList);
startActivity(intent);
}
==================================================== ============================= Construtor chamado atividade:
public AksProductionNumbers(){
Intent intent = getIntent(); // <-- returns null
Bundle extras = intent.getExtras();
}
A função getIntent retorna nulo. Acho que é porque a atividade de chamada já está morta, mas acho estranho, porque peço claramente à estrutura que inicie a nova atividade antes de fechar a atual. Alguém conhece uma solução alternativa para esse problema? Eu escolhi essa solução para não precisar substituir o botão 'voltar'. Outra solução é bloquear o segmento de chamada até que ele receba o sinal de desbloqueio do aplicativo inicial, mas acho que isso também é feio. Uma terceira classe de gerenciador de dados também pode resolver o problema da fonte de dados. Obrigado por idéias e conselhos!