PhoneGap Android и GPS-спутник - PullRequest
       31

PhoneGap Android и GPS-спутник

10 голосов
/ 10 октября 2011

Кажется, что телефонная связь не использует спутник GPS вместо геолокации из сотовой сети.Я не удовлетворен точностью, всегда между 150-1000 метров.Логотип активности GPS также не отображается.

Есть ли способ заставить приложение для Android использовать спутники GPS, даже если доступны другие методы?Есть ли способ переопределить функцию по умолчанию, чтобы активировать использование спутникового GPS?

Заранее спасибо

1 Ответ

11 голосов
/ 09 января 2012

PhoneGap на самом деле использует геолокацию спутников GPS так же, как платформа Android. Вы должны получать местоположения с более точной точностью, чем 150 м, если GPS вашего телефона включен. Каждый раз, когда вы вызываете методы geolocation.getCurrentPosition() или geolocation.watchPosition(), класс PhoneGap GeoListener запрашивает у поставщика GPS и поставщика NETWORK, затем он создает прослушиватель для обоих поставщиков, если они существуют. Это причина, по которой вы получаете широкий диапазон точности.

Таким образом, если вы хотите задать местоположения с высокой точностью, вы можете установить его в значение true для параметра geolocationOptions, переданного вышеупомянутым методам. Проверьте API: geolocationOptions

navigator.geolocation.watchPosition(
    onSuccess, onError, 
    { maximumAge: 3000, timeout: 5000, enableHighAccuracy: true });

Если вы хотите иметь больший контроль и более точное поведение запросов местоположения, вы можете расширить API PhoneGap для этого.

...