Как работает местоположение на карте Google?
Мой вопрос: как Google Map или мобильный GPS может найти мое текущее местоположение?
Насколько я понимаю после прочтения этой статьи, GPS-приемник получает координаты местоположения через эти спутники, и это местоположение затем передается в API Google Map (или любого другого клиента), который затем определяет точное местоположение на карте. Это правильно?
Где-то я также читал, что мобильные башни также играют роль. Но я не понимаю, что это можно использовать для отслеживания местоположения мобильного устройства, если это необходимо, но мобильные приложения или карты Google используют спутниковый подход. Правильно?
1 ответ
Это немного неточный вопрос, чтобы спросить "Как работает местоположение на карте Google", потому что приложение Google Maps (а также любое приложение, использующее API карт Google) - это всего лишь потребитель служб определения местоположения на вашем устройстве, и оно не используется для определения текущего местоположения. сам.
Поскольку Карты Google - это просто приложение, его можно запустить в браузере или как собственное приложение. В зависимости от этого, способ получения информации о вашем местоположении также может отличаться.
Если вы запускаете Карты Google из веб-браузера (или WebView, или UIWebView,...), он обычно использует API геолокации HTML 5 для определения вашего местоположения, а затем использует его для отображения вашего местоположения в Картах Google. Затем геолокация HTML5 использует некоторые сервисы более низкого уровня для определения вашего местоположения, такие как датчик GPS, WIFI, сеть и т. Д. Уже есть вопросы о том, как геолокация HTML 5 определяет ваше положение на SO, например, этот или этот.
Если ваше приложение запускается как отдельное приложение, оно зависит от вашей платформы, датчиков вашего устройства, вашей сети,... как определяется местоположение. Так, например, в Android с датчиком GPS используется LocationManager, который снова извлекает местоположение с помощью GPS, или от сетевого провайдера, или возвращает последнее известное местоположение, и т. Д. За этим стоит множество различных интересных методов, которые вы можете посмотреть сами. (Например, чтобы определить ваше местоположение с помощью Wifi, Google имеет базу данных идентификаторов SSID WIFI и их местоположений, полученных с помощью анонимного отслеживания устройства, и может приблизительно определить ваше местоположение только из сетей Wifi вокруг вас.)