Геолокация для iPhone JavaScript Веб-приложение

1

Я создаю веб-приложение с полным стеком в JavaScript, предназначенное для использования на мобильных устройствах (Android и iPhone). Использование API-интерфейсов HTML5 Geolocation на телефонах Android отлично работает, но, похоже, проблема с авторизацией iPhone. При взаимодействии с веб-приложением в качестве пользователя iPhone iOS автоматически отказывает пользователю в разрешении использовать службы определения местоположения, и поэтому, в отличие от телефонов Android, нет всплывающего окна, которое дает пользователю возможность разрешать услуги определения местоположения. Я много раз потрудился с настройками служб местоположения iPhone безрезультатно. Есть ли фрагмент кода JavaScript, который позволяет пользователю разрешать разрешение для служб определения местоположения? Благодарю.

Теги:
iphone
geolocation

1 ответ

0
Лучший ответ

Настройки местоположения для Safari могут быть OFF, вы можете изменить его здесь: Settings > Privacy > Location Services > Safari

Вы также можете попробовать что-то вроде этого:

if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(successFunction);
} else {
    // Make API call to the GeoIP services
}

И используйте некоторую услугу, такую как http://ip-api.com (но геоданные на основе ip не очень точны)

Здесь вы можете найти дополнительную информацию о getCurrentPosition():

  • 0
    ip-api.com прилично точен, но вы должны быть подключены к Wi-Fi, чтобы использовать его. Я был в состоянии использовать API freegeoip.net , но геоданные ПУТИ ОТКЛЮЧЕНЫ , показывая, что я в Хьюстоне (когда я на самом деле в Остине). Возможно, на данный момент это обходной путь, и я позволю пользователю редактировать широту / долготу, создаваемую этим API. Жаль, что я до сих пор не могу понять, как получить доступ к службам определения местоположения на iPhone через мое веб-приложение! В любом случае спасибо за вашу помощь.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню