Use uma notificação persistente para permitir que o usuário retorne à execução do aplicativo Android

Estou desenvolvendo um aplicativo com diversas atividades. Gostaria de criar uma notificação persistente que diz (mais ou menos) "AppName - Return to AppName" que estará presente sempre que meus serviços em segundo plano estiverem em execução.Criar e descartar a notificação não foi um problema.

Agora, o usuário pode estar em qualquer uma das várias telas / atividades, sair do aplicativo e depois desejar entrar novamente no aplicativo por meio da notificação.O problema é, a notificação deve ter uma intenção, que lança umAtividade predeterminada. Quero que a notificação volte a entrar no aplicativoqualquer atividade que esteja no topo da pilha do histórico.

Minha primeira tentativa de uma solução feia foi fazer uma atividade (vamos chamá-la de "returnFromNotify"), cuja única tarefa era "terminar" a si mesma em "onCreate". A notificação abriria "returnFromNotify" no escopo do histórico de aplicativos, que seria removido imediatamente, enviando o usuário de volta ao estado do histórico anterior na pilha de aplicativos. Isso parece funcionar ... a menos que o usuário tenha usado "voltar" para sair completamente do aplicativo. Em seguida, quando eles clicam na notificação, "returnFromNotify" é carregado e finalizado, enviando-os de volta à tela inicial (pois não há atividades na pilha de histórico do aplicativo).

Eu considerei tentar detectar se havia algo na pilha de histórico antes de "returnFromNotify" e, se não, inicie minha Atividade principal. Também não consigo encontrar uma maneira de fazer isso.

Alguma entrada ou sugestão para um iniciante em Java / Android? Para sua informação, minha história principal é com linguagens baseadas em script.

questionAnswers(5)

yourAnswerToTheQuestion