iphone - ubicacion - Simulación de cambios de ubicación para `startMonitoringSignificantLocationChanges`
ubicacion simulada ios (3)
FWIW, el monitoreo de los cambios de ubicación significativos está vinculado casi exclusivamente a la triangulación de la torre celular y las transferencias. La forma en que se maneja esto en el simulador es probablemente muy diferente de lo que sería en el dispositivo. Incluso el monitoreo regional obtiene el bono adicional de Wifi y otras aplicaciones que utilizan la ubicación para obtener actualizaciones más frecuentes.
Supongo que así es como funciona el simulador, incluso al pasar a lugares que están muy alejados y que deberían dispararse lógicamente, no es así como se manejan las actualizaciones. No hay transferencias de torres celulares en el simulador, por lo tanto, no hay manera de probar realmente los cambios significativos.
Estoy escribiendo una aplicación para iPhone y estoy usando los Servicios de Localización. Estoy utilizando el método CLLocationManager
en CLLocationManager
. (Según tengo entendido, esto es para los servicios de ubicación de baja potencia y baja precisión). Cuando compilo y lanzo mi aplicación en el Simulador de iOS, mi ubicación es correcta. Sin embargo, quiero simular actualizaciones de la ubicación más allá de la solución inicial.
Me di cuenta de estas dos opciones:
- Simulador de iOS: depurar> menú de ubicación
- Xcode 4: Producto> Depurar> Menú Simular ubicación
Ambos trabajan de forma aceptable para simular una solución inicial. (Por ejemplo, elija "Apple" de la primera o "Moscú" de la segunda.) Sin embargo, los cambios posteriores a cualquiera de estos NO activarán otra actualización de ubicación en la aplicación simulada.
Lo que deseo es que se me notifique cuando la ubicación simulada cambie cuando se usa startMonitoringSignificantLocationChanges
. (El simulador de iOS genera una serie de actualizaciones cuando uso startUpdatingLocation
en startUpdatingLocation
lugar). Esto hace que sea más fácil probar las aplicaciones habilitadas para la ubicación sin llevar el dispositivo al campo.
Dos preguntas:
- ¿Cuál es la diferencia entre estos dos?
- ¿Cómo uso el simulador de iOS y / o Xcode 4 para simular una serie de cambios de ubicación?
Aclamaciones.
Para dar seguimiento a @ Nevan-king, responda por qué no hay actualizaciones al usar startMonitoringSignificantLocationChanges
Consulte Apple Note para func startMonitoringSignificantLocationChanges()
Las aplicaciones pueden esperar una notificación tan pronto como el dispositivo se mueva 500 metros o más de su notificación previa. No debe esperar notificaciones más de una vez cada cinco minutos . Si el dispositivo es capaz de recuperar datos de la red, es mucho más probable que el administrador de ubicación envíe notificaciones de manera oportuna.
Si desea crear una pista, puede crear un archivo GPX con puntos de referencia como este:
<?xml version="1.0" encoding="UTF-8"?>
<gpx>
<wpt lat="52.373" lon="4.871"></wpt>
<wpt lat="52.374" lon="4.872"></wpt>
<wpt lat="52.375" lon="4.871"></wpt>
</gpx>
Guárdalo como track.gpx. Tenga cuidado de no tener espacios en blanco al principio.
Cuando creas y ejecutas, hay una barra de herramientas en la parte inferior de Xcode con una flecha de ubicación (similar a la de los iPhones). Es para "Simular Ubicación". Haga clic allí y cargue su archivo GPX. Cuando su aplicación se ejecuta en el simulador, el punto azul debería moverse. No creo que haya una manera de controlar el tiempo, por lo que actualiza su ubicación cada medio segundo aproximadamente.
La diferencia que puedo ver en el menú del simulador es que no puede tener una pista personalizada, solo un punto personalizado. No sé por qué las opciones de menús son diferentes, probablemente en algún momento agregarán una opción para una pista personalizada en el Simulador.