Sto scavando in questo codice che utilizza un timer di base per verificare gli aggiornamenti di posizione. Ho quindi l'invio di lat/lng su un server.iOS 9 Posizione Aggiornamento Attività in background dopo 3 minuti
http://mobileoop.com/background-location-update-programming-for-ios-7 https://github.com/voyage11/Location
Si sta lavorando bene quando inserito e collegato tramite XCode, tuttavia quando si scollega e prendo il dispositivo mobile, il sistema operativo sembra uccidere sempre il thread in background esattamente dopo 3 minuti. Quindi, se imposto il timer per l'esecuzione ogni 30 secondi, riceverò ~ 6 aggiornamenti fino a portare l'app in primo piano.
Ho letto che il tempo massimo di esecuzione in background è di 3 minuti, ma come vedo questo codice sta ripristinando l'attività in background dopo 1 minuto, quindi non sono sicuro del motivo per cui sto vedendo questo.
Ci deve essere un modo per aggirare questo. Qualche cosa posso fare qui?
EDIT: questo mi ha aiutato: allowsBackgroundLocationUpdates in CLLocationManager in iOS9
aherrick hai trovato una soluzione per questo? Ho provato il codice elencato nella tua modifica, l'impostazione allowBackgroundLocationUpdates = YES, ma sto ancora terminando dopo 3 minuti con il polling GPS in background. Sono state apportate modifiche aggiuntive per far funzionare il polling GPS in background? – haplo1384
Ehi! sì in realtà. Così ho capito che non c'è bisogno di palo di sfondo. Ho semplicemente UIBackgroundModes impostato su Location. Funziona solo a quel punto – aherrick