¿Dos (o más) aplicaciones que usan GPS comparten el mismo flujo de datos de ubicación?

Cuando una aplicación solicita datos de GPS, ¿activa la llamada de GPS y luego, cuando otra aplicación ejecuta llamadas simultáneamente, realiza una llamada por separado? O cuando la segunda aplicación accede al GPS, ¿obtiene los datos que ya están allí (o algo similar, como que se abre un canal en ambas aplicaciones y el sistema GPS envía todos los datos a cada canal cuando hay datos disponibles)?

Me pregunto, porque si cada aplicación solo controla el GPS la mitad del tiempo, ciertamente podría resultar en un GPS menos efectivo. Así que supongo que el iPhone se construyó con esto en mente y los mismos datos de GPS estarían disponibles para cada aplicación, pero no sé si eso es lo que se está haciendo.

¿Alguien sabe el funcionamiento interno del GPS en iOS?

Respuestas (2)

Prefacio esto con, no soy un desarrollador de IOS, pero estoy seguro de que funciona de la misma manera que Android y otras API de GPS.

Cuando una aplicación llama a las API de GPS, está llamando una abstracción al sistema de ubicación/GPS y recibe la información de posición que presenta el sistema.

Entonces, en este caso, cuando una aplicación solicita al sistema operativo datos de ubicación, el sistema operativo utiliza una combinación de datos de GPS y Wifi para determinar la ubicación del dispositivo. Si al mismo tiempo otra aplicación solicita datos de ubicación, el teléfono simplemente usaría los datos de ubicación que tiene en lugar de tener que encender las radios nuevamente.

supongamos que habrá una configuración en el sistema operativo en algún lugar en cuanto a qué tan cerca deben estar esas llamadas antes de volver a calcular
Probablemente no, el sistema operativo decide la mejor acción y supongo que estaría bien oculta, pero nuevamente no conozco la API.

En iOS, los servicios de ubicación se ubican entre todas las radios de ubicación (información de la torre celular, wifi más cercano, GPS) y las aplicaciones, y almacena en caché los resultados fusionados entre la obtención de nueva información de esas radios a una velocidad determinada por el sistema operativo para una duración de batería decente frente a la solicitada. precisión. Las aplicaciones nunca "controlan" ni hablan directamente con el hardware GPS o el controlador del sistema operativo. La información de ubicación que obtiene una aplicación tiene una marca de tiempo, por lo que una aplicación puede verificar si es información antigua o no.