LocationManager in Service - precisa parar se não houver correção em 1 minuto

Eu tenho serviço regular que começo a usar alarmes a cada 5 minutos. O Service Implementa o LocationListener para obter a correção do GPS e salvá-lo no banco de dados do SqLit

Dou 1 minuto de serviço para obter a melhor correção possível. Se eu tiver precisão <20 antes disso - melhor ainda.

Tudo o que funciona bem. Também tenho um código que verifica se o GPS está desativado, então saio do serviç

O que eu quero fazer é: Se não houver correção em 1 minuto - desejo sair do serviço. Atualmente, como a maioria das lógicas (verificação de tempo, etc.) está em onLocationChanged - nunca tenho chance de fazer isso porque nunca recebo localização.

Existe um temporizador ou algo assim que eu possa usar? Eu sou novo em Java, exemplo seria bom. Eu vejo assim: No início, crio o timer com retorno de chamada e, nessa função de retorno, vou limpar e desligar. Não sei se haverá implicações na possível execução de onLocationChanged?

Posso desativar o temporizador assim que entrar em LocationChanged?

questionAnswers(2)

yourAnswerToTheQuestion