Nunca he podido averiguar la forma en que Android recuerda su última ubicación conocida. Si parece recordar la ubicación de hace varias horas pero no hace varios segundos. Creo que es mejor dar un ejemplo de lo que quiero decir.
Hace poco estuve en el área de la bahía. Estaba usando los mapas de Google en mi Android y estaba cerca del Campus de Google en Mountain View. Estaba usando mapas con GPS habilitado y después de un tiempo obtuve un bloqueo de GPS adecuado que usé para navegar por el área.
Cuando volví a San Francisco más tarde, lo estaba usando para recorrer la ciudad. Cada vez que encendía los mapas, mi ubicación volvía a estar en Mountain View. Aproximadamente 10 segundos después de que se cerró el GPS, obtuve mi ubicación real. Si apagué y volví a encender el teléfono unos segundos después, sucedió lo mismo: cree que estoy en un lugar donde estaba horas antes y luego entra en acción con mi ubicación real. Esto sucede todo el tiempo, recordando dónde estaba hace horas, no dónde estaba hace unos momentos. Una vez que he estado en un área durante un cierto tiempo, ahora se convierte en la nueva "última ubicación conocida".
¿Por qué, una vez que obtengo un bloqueo GPS preciso, Android no lo registra como la "última ubicación conocida" en lugar de una anterior?