Sto scrivendo un'app che monitora la posizione dell'utente. Ho un oggetto CLLocationManager che utilizza startMonitoringSignificantLocationChanges, quindi posso ottenere gli aggiornamenti delle posizioni dallo sfondo quando l'app non è in esecuzione. Ho impostato la mia applicazione suFinishLaunchingWithOptions, quindi se ottengo una chiave di posizione, accendo il mio gestore per ottenere la posizione dell'utente. Tutto funziona bene, ma il problema è che ogni volta che ottengo una posizione dallo sfondo, l'accuratezza orizzontale di questa posizione è pessima. Nella maggior parte dei casi è 1414 m.Location.HorizontalAccuratezza eccessiva quando si ottiene la posizione dallo sfondo
Qualcuno sa perché la precisione orizzontale è così grave quando la posizione viene dallo sfondo? C'è qualcosa che posso fare per ottenere posizioni con una maggiore accuratezza in background?
Quando l'app è in esecuzione, tutte le posizioni che ottengo sono molto accurate, questo accade solo quando la posizione viene dallo sfondo. Questo ha qualcosa a che fare con il numero di torri cellulari che ho nella mia città? Stavo pensando che forse il dispositivo non utilizza gps di nodi wifi per ottenere posizioni in background.
In ogni caso, qualsiasi aiuto qui è apprezzato. Per favore condividi i tuoi pensieri.
Grazie!
La ricerca di qualcun altro qui http://longweekendmobile.com/2010/07/22/iphone-background-gps-accurate-to-500-meters-not-enough-for-foot-traffic/ menzioni "CLLocationManager ha un tendenza a segnalare più eventi in un brevissimo arco di tempo, anche in background (meno di 10 secondi di distanza) ... il secondo evento sarebbe molto più preciso del primo " –
Brian grazie per il link. C'erano alcune informazioni molto utili lì. Hanno menzionato che una posizione è precisa a 500m quando viene acquisita dallo sfondo, ma dipende dalla città in cui ti trovi. Ho testato la mia app qui a Brasilia, in Brasile, e la precisione migliore che ho ottenuto finora è stata di 1200m. –