/ / Atualizar a primeira tela automaticamente, mesmo se for declarado como android: launchMode = “singleTask” - android, android-intent

Atualize a primeira tela automaticamente, mesmo que seja declarado como android: launchMode = “singleTask” - android, android-intent

Eu tenho 2 atividades. Atividade A e Atividade B. Ambos chamando um ao outro embora intencional. A Atividade A chama a Atividade B. A Atividade B acessa o banco de dados e a envia de volta para a atividade A através de putExtra () e getExtra ().
Agora minha atividade A está declarada assim android: launchMode = "singleTask"
Quando eu voltar para a atividade A eu quero o meu presenteatividade A a ser atualizada ou atualizada automaticamente. Mas, para minha surpresa, o que eu entendi na depuração é que, se eu declarar uma atividade como launchMode = "singleTask", ela trará a tela para o topo da pilha. Na verdade, ele não entra no código.
É o conceito que entendi correto?
A solução que vejo é ter um botão de atualização eao clicar desse acesso, o código e a tela de atualização. Mas eu não quero fazer isso. Você acha que existe alguma outra alternativa? Eu não quero mudar o launchMode = "singleTask"

Desde já, obrigado.

Respostas:

0 para resposta № 1

Experimentar startActivityForResult(intent); e enquanto você tiver terminado em B setResult(RESULT_OK); e finish(); a atividade B e em A onActivityResult(int,int,intent); pegue o código de resultado se RESULT_OK atualizar seu A.


0 para resposta № 2

Não importa qual launchMode, quando você alterna da Atividade B para a Atividade A, o método onResume () deve ser chamado. Você pode colocar seu código de atualização lá para atualizar sua atividade.


0 para resposta № 3

coloque sua parte de atualização no método onResume. Depois que a Atividade B tiver concluído, seu método onResume será chamado na Atividade A.