/ / Fai in modo che il GPS assegni una batteria minima: Android, gps, batteria

Fai in modo che il GPS assegni una batteria minima: Android, gps, batteria

Ho un'app basata sulla registrazione di gpscoordinate su un intervallo impostato di 60 secondi. Un thread in background è il listener della posizione che reagisce alle modifiche. Il thread di ascolto viene svegliato ogni 60 secondi.

Voglio fare in modo che questa attrazione abbia poca energiapossibile pur mantenendo l'intervallo di aggiornamento. Avvio la mia app registrando un local manager come mostrato di seguito. È questo il metodo migliore o salverei l'ansia creando un nuovo gestore di posizione ogni 60 secondi quando voglio ottenere la posizione?

LocationManager locationManager = (LocationManager)

this.getSystemService(Context.LOCATION_SERVICE);
locationManager.requestLocationUpdates(locationProvider,60000,10,updaterThread);

La precison non è particolarmente alta (~ 20 metri), ma la necessità di avere intervalli di aggiornamento regolari di non più di 60 secondi è molto importante.

risposte:

2 per risposta № 1

dovresti guardare a usare il nuovo API di posizione fusa è progettato specificamente per questo.

in pratica tutto ciò che devi fare è connetterti al gestore di posizione e una volta connesso puoi semplicemente chiamarlo quando vuoi ottenere la tua posizione