Android, detectar quando outros aplicativos são iniciados

Estou tentando desenvolver um aplicativo que impeça o usuário de acessar um aplicativo especificado sem uma senha. O cenário é ...

o usuário clica no aplicativo "E-mail" (por exemplo)meu aplicativo detecta o lançamento de um aplicativomeu aplicativo confirma que é o aplicativo "E-mail"meu aplicativo abre uma visualização por cima, solicitando uma senhausuário digitar uma senha, se correto, meu aplicativo desaparecerá, deixando o aplicativo "Email" no topo

Eu estou bem fazendo o resto, apenas a parte 2 está me intrigando, e depois de muitos dias lendo Broadcast Intents etc. e tentando ouvir "android.intent.action.MAIN" etc em meus projetos de teste, não posso parece detectar quando um aplicativo que não seja o meu é iniciado.

Alguém pode ajudar? Estou fazendo o caminho certo, procurando novos aplicativos que transmitam uma intenção de iniciar ou devo ler o log do sistema para novas intenções ou fazer algo no código nativo?

Qualquer ponteiro ajudaria, mesmo que você não possa responder totalmente, poderei fazer mais pesquisas. Muito obrigado. Ian

questionAnswers(7)

yourAnswerToTheQuestion