Android: ¿Cómo restablecer y descargar datos A-GPS?

¿Cómo puedo restablecer y descargar de forma programada nuevos datos A-GPS en una aplicación de Android? En otras palabras, ¿cómo funcionan las herramientas "Manage A-GPS state" en la aplicación GPS Status & Toolbox ?

Debería ser capaz de utilizar LocationManager.sendExtraCommand(String provider, String command, Bundle extras) . Esto le permitirá borrar todo o parte de los datos GPS, por lo que se volverá a cargar. Los documentos están aquí , pero un resumen rápido de los argumentos, referenciados a partir de este código (para un proveedor de GPS):

Para el provider , use LocationManager.GPS_PROVIDER .

Para el command , utilice "delete_aiding_data"

Para los extras, si pasa null , borrará todos los datos. Si sólo desea borrar datos específicos (por ejemplo, sólo el almanaque o la posición), puede utilizar los indicadores encontrados en esta función como extras en el lote.

No olvide añadir android.permission.ACCESS_LOCATION_EXTRA_COMMANDS a su lista de permisos en el manifiesto!

Hasta ahora, la mejor respuesta a mi pregunta parece ser una combinación de la respuesta de @Geobits y el código de inyección XTRA discutido en Problemas con sendExtraCommand y force_xtra_injection . En base a esto, actualmente utilizo lo siguiente:

 locationManager = (LocationManager) getSystemService(LOCATION_SERVICE); locationManager.sendExtraCommand(LocationManager.GPS_PROVIDER,"delete_aiding_data", null); Bundle bundle = new Bundle(); locationManager.sendExtraCommand("gps", "force_xtra_injection", bundle); locationManager.sendExtraCommand("gps", "force_time_injection", bundle); 

Si alguien tiene ideas adicionales sobre cómo mejorar esto, o cómo determinar los mejores tiempos para borrar y descargar nuevos datos GPS, estaría muy interesado en escuchar.

Otra forma sencilla de borrar los datos GPS es apagar el dispositivo y sacar la batería por unos minutos. No estoy seguro si funciona para todos los dispositivos sin embargo. También he escrito una utilidad simple que utiliza el GpsStatus Listener para mostrar si el almanaque y las efemérides se han guardado o no para cada satélite. Se llama "GPS Check" y está disponible en GP.

  • Posicionamiento egnos en un dispositivo android
  • Obtención de velocidad mediante el API de ubicación de Google Play
  • Mantener un servicio de GPS vivo y optimizar la duración de la batería
  • No se puede resolver Manifest.permission.ACCESS_FINE_LOCATION
  • Android- misma ubicación GPS repetir sin actualizar
  • LocationClient getLastLocation () devolver null
  • Estado del GPS de Android me conduce nueces
  • Android Location Manager, Obtener ubicación GPS, si no hay GPS, luego llegar a la ubicación del proveedor de red
  • Pasando GPS LonLat de Android GPS a la página web (javascript)
  • Lista de todos los nombres de calles y calles en Google en API
  • Navegador Android intención: abrir la aplicación de navegación con coordenadas GPS
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.