Когда приложение запрашивает данные GPS, оно активирует сам вызов GPS, а затем, когда другое приложение одновременно выполняет вызовы, оно выполняет отдельный вызов? Или когда второе приложение обращается к GPS, оно получает данные, которые уже есть (или что-то похожее, например, канал открывается в обоих приложениях, когда система GPS отправляет все данные на каждый канал, когда данные доступны)?
Мне интересно, потому что, если каждое приложение получает контроль над GPS только половину времени, это, безусловно, может привести к снижению эффективности GPS. Поэтому я предполагаю, что iPhone был сконструирован с учетом этого, и одни и те же данные GPS будут доступны для каждого приложения, но я не знаю, так ли это делается.
Кто-нибудь знает внутреннюю работу GPS на iOS?
источник
В iOS службы определения местоположения располагаются между всеми радиостанциями определения местоположения (информация о сотовой вышке, ближайший Wi-Fi, GPS) и приложениями и кэшируют объединенные результаты между получением новой информации с этих радиостанций со скоростью, определяемой ОС, для обеспечения достойного времени автономной работы по сравнению с запрошенным точность. Приложения никогда не «контролируют» и не общаются напрямую с оборудованием GPS или драйвером ОС. Информация о местоположении, которую получает приложение, имеет временную отметку, поэтому приложение может проверить, является ли оно старой информацией или нет.
источник