2010-12-09 16 views
23

Me preguntaba si era posible crear una aplicación iOS que rastreara su ubicación a través de un GPS mientras estaba en segundo plano.iOS Multi-Tasking Track GPS Ubicación

Intenté esto con la aplicación incorporada "Mapas", pero fue en vano.

Si esto es posible, sería genial si me puede remitir a algunos ejemplos de código, documentación o tutoriales.

(si se trata de un duplicado, por favor hágamelo saber y voy a eliminarlo)

Respuesta

43

Esto es posible - ver this document para la multitarea en general y this section of the Location Awareness Programming Guide for "Getting Location Events in the Background". Por supuesto, todo esto habla de todas las formas en que un dispositivo iOS puede obtener su ubicación (triangulación de torre celular, observación de red wifi estilo Skyhook y GPS), no exclusivo GPS.

En resumen, al leer esos documentos: agregue la clave UIBackgroundModes en su info.plist, que es una matriz, y coloque el valor 'ubicación' en ella. A continuación, recibirá las actualizaciones de CLLocationManager incluso cuando esté en segundo plano.

Sin embargo, si desea ser amable con la batería, entonces es mejor utilizar el método startMonitoringSignificantLocationChanges en un CLLocationManager. A continuación, obtiene actualizaciones de ubicación adecuadamente significativas, incluso cuando está en segundo plano sin ser una aplicación de fondo completa. Otras partes de la documentación indican que un cambio significativo es cualquier cambio de una torre de celda a otra.

+0

Gracias por su respuesta; Aceptaré tu respuesta en unos minutos si nadie más responde. – Linuxmint

+0

Cool - disculpa por ser un poco vago. Este es un tema que limita con las aplicaciones que he escrito, pero, sin embargo, está un poco más allá de mi experiencia práctica ... – Tommy

Cuestiones relacionadas