Como Izzy disse na resposta , o Tasker é uma ótima opção, mas não é gratuito para ninguém. Eu tentei o AutomateIt (Free) e ele faz o trabalho.
Editar: esta resposta foi testada com sucesso no Android 4.2.1, sem fornecer acesso root ao AutomateIt. No entanto, no Android 4.4.2, COS12 (Android 5.0.2) e CM12.1 (Android 5.1.1, build: YOG7DAO1K6), as opções relevantes não estavam visíveis até eu reiniciar o aplicativo com acesso root. Este fato chegou ao meu conhecimento através deste comentário de jonatr.
- Instale e inicie o AutomateIt.
- Vá para Minhas regras → Tudo e veja se você precisa de regras predefinidas. Caso contrário, desative ou exclua tocando em cada entrada uma vez e selecionando a opção desejada.
- Toque em
+
correspondente à guia Minhas regras → Trigger de status do aplicativo → toque no ícone da lente e escolha seu aplicativo ( Mapas aqui) → marque Aplicativo ativado → Avançar → Ativar / desativar ação do GPS → Ativar GPS → Avançar → escolha Padrão ou Não (para exibir ou não, um brinde sempre que a automação for acionada) → toque no ícone de disquete na parte superior para salvar tudo.
- Repita as etapas 2 a 4, exceto que desmarque o aplicativo ativado na etapa 3 neste momento.
Agora você pode abrir os Mapas e o Local será ativado. Você fecha os Mapas e o Local será desativado. Você pode fazer mais com isso se quiser desativar o Local (por exemplo, 10 minutos) depois de minimizar os Mapas.
Honestamente, vou preferir o Tasker porque preciso de menos etapas e sei que isso não sobrecarrega minha bateria. Verifique se o AutomateIt consome bastante a bateria.