Включение геолокации без обновления страницы?

В настоящее время мы должны обновить веб-страницу (фактически PhoneGap приложение), если GPS был выключен и (после уведомления пользователя) затем включен.

Как мы можем обновить статус GeoLocation без необходимости обновлять страницу/приложение?


person Tar    schedule 25.03.2012    source источник


Ответы (2)


Почему бы просто не использовать setInterval для проверки поддержки каждые несколько секунд?

person Raymond Camden    schedule 27.03.2012
comment
потому что geoLocation, к сожалению, не обновляется без полного обновления. - person Tar; 27.03.2012
comment
Я не верю, что ты прав. У вас есть простой пример на одну страницу, который я могу запустить для проверки? - person Raymond Camden; 27.03.2012

Надеюсь, это поможет кому-то еще. У меня были те же проблемы с попыткой загрузить геолокацию через API Карт Google в многостраничном приложении phonegap + JQM. setInterval/setTimer также не работает. Единственный способ, которым я заставил его работать, - это также полное обновление, из-за чего приложение выглядит сломанным.

onDeviceReady у меня тоже не работал, так как геолокация не вызывалась в файле index.html

Мое решение состояло в том, чтобы не пытаться вызывать геолокацию при загрузке представления/страницы геолокации. Вместо этого вставьте кнопку для вызова скрипта:

<a href="#" onclick="getLocation();" data-role="button">Get My Location</a>

Затем вызовите API геолокации с Javascript, прикрепленным к getLocation().

  function getLocation() {
        navigator.geolocation.getCurrentPosition(onSuccess ,onError,
      { timeout: 10000, enableHighAccuracy: true } );
        var lat;
        var lng;
    }
person Ryan Coolwebs    schedule 25.04.2014
comment
На самом деле даже этот обходной путь не является надежным. Кажется, геолокация тоже не хочет срабатывать с первого раза. Я собираюсь проверить форумы по телефону. - person Ryan Coolwebs; 25.04.2014