HTML5 Geolocation игнорирует параметр enableHighAccuracy?

В настоящее время я пишу webapp, который может пострадать от мобильных устройств. В какой-то момент мне нужно получить местоположение пользователя, которое я делаю с помощью getCurrentPosition () HTML5. Я бы скорее сделал грубое исправление как можно быстрее, поэтому я вызываю эту функцию с параметром enableHighAccuracy, установленным на false.

В большинстве случаев это работает так, как ожидалось; Однако на некоторых устройствах Android браузер, по-видимому, игнорирует этот атрибут и всегда пытается найти местоположение GPS (значок GPS появляется на панели уведомлений). Самое забавное, что это происходит, даже если я вручную отключу местоположение GPS в настройках.

Это, похоже, не зависит от браузера, я тестировал один и тот же код с Chrome, Firefox и Opera, и это происходит с помощью простого кода, например:

<!doctype html> <html> <head> <script type="text/javascript"> function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(onLocationReceived, onLocationError, {timeout: 5000, enableHighAccuracy: false}); } else alert("Geoloc not supported by your browser"); } function onLocationReceived(position) { alert("Location retreived! " + position.coords.latitude + ", " + position.coords.longitude + " (" + position.coords.accuracy + ")"); } function onLocationError(error) { alert("Received an error! " + error.message + "(" + error.code + ")"); } </script> </head> <body> <button onclick="getLocation();">Get location</button> </body> 

До сих пор это происходило на HTC One и Xiaomi 1S. Вы когда-нибудь сталкивались с этой проблемой? Может быть, это известная ошибка?

Благодарю.

Да, я испытываю то же самое на Android Lollipop и Chrome 43. Я надеялся, что смогу сделать getCurrentPosition без highAccuracy и в то же время запустить watchPosition с включенным highAccuracy.

Но нет. Оба вызова возвращаются в одно и то же (позднее) время с теми же (GPS) результатами …

https://bugzilla.mozilla.org/show_bug.cgi?id=1057076

http://www.hyam.net/blog/archives/1432

Intereting Posts
Не удалось запустить намерение Intent в течение 45 секунд – robotium Чистое приложение c ++ для Android и его производительность Как отключить Crashlytics во время выполнения в ответ на изменение предпочтений пользователя? Как запустить сканирование массового режима в zxing Подписывание ароматов продуктов с помощью градиента Рисование маршрутов между несколькими точками на карте Как выровнять элемент вправо в горизонтальном LinearLayout? Android Api 24 не может найти источники Веб-просмотр в галерее, остановка прокрутки / сенсорных событий Groovy Android и libgdx Ошибка получения родительского элемента для элемента: ресурс не найден, который соответствует указанному имени после обновления до AppCompat v23 Что такое использование BaseColumns в Android? Android: «Уровень приложения» Пауза и возобновление Параметры HttpGet не отправляются Приложение не будет строить на устройствах, не поддерживающих 4.4, после обновления сервисов Google Play