Вот некоторая информация, которую я собрал, исследуя W3C Geolocation API .
Сначала я запустил пример кода Wikipedia внизу страницы.Он почти такой же, как ваш код, только вы используете Promise .Оттуда я получил позицию широта и долгота с методом getCurrentPosition () .Метод watchPosition () также работал.
Я проверил это на своем ПК и отобразил результаты в консоли разработчика Chrome.Он также работал на моем мобильном телефоне во время ходьбы (последние несколько цифр менялись по широте и долготе).
Относительно интерфейса PositionOptions , чтение из ваших опций, время ожидания, которое может пройтиот вызова getCurrentPosition () или watchPosition () до вызова successCallback, которое составляет 30000 миллисекунд (30 секунд), и так как MaximumAge равно 0, он не будет использовать кэшированные расположения, вместо этого он должен немедленно попытаться получить новый объект позиции.
Теперь для важной детали.
enableHighAccuracy дает подсказку, что приложение хотело бы получить лучшийвозможные результаты.Но есть способы, которыми это определяется (проверьте статью в Википедии в начале, выделите «Источники местоположения»):
GPS (Система глобального позиционирования) - имеетвысочайшая точность;в большинстве смартфонов Android точность может достигать 10 м.
Отслеживание мобильного телефона - используется, если мобильный телефон или беспроводной модем используется без встроенного чипа GPS
Система определения местоположения WiFi
- Расположение IP-адреса
Существует также точность позиционирования , которая дает точность в метрах .На моем ПК я получил точность около 100 000 метров, поэтому он не имеет значения широты и долготы (найдите его на картах Google, введите «широта, долгота» и посмотрите, куда указывает маркер. Также, console.log (position.скор. точность) ).На моем мобильном телефоне он находился на расстоянии 15–50 м.
Смартфон использует информацию о местоположении GPS, а ПК - местоположение в сети.Я не очень разбираюсь в Chromebook, но нашел этот ответ:
В настоящее время Chromebook не поддерживает функцию GPS.Но вы можете сообщить сайту ваше местоположение.Если вы используете Google в качестве поисковой системы по умолчанию на своем телефоне, ваше местоположение по умолчанию используется для поиска в Google.Если вы разрешите Chrome поделиться своим местоположением с сайтом, Chrome отправит информацию в Службу определения местоположения Google, чтобы получить оценку вашего местоположения.Затем Chrome может поделиться этой информацией с сайтом, который хочет узнать ваше местоположение.
Существуют и другие способы определения местоположения, см. API геолокации Карт Google .Кроме того, попробуйте найти различия между этими двумя .Надеюсь, это поможет в любом случае.
С уважением.