Я делаю веб-страницу, которая загружает карту и отображает положение пользователя. Он будет работать как Android приложение (как WebView), так и как веб-приложение (с использованием браузера через мобильный или настольный компьютер).
После многих дней исследований, я считаю, что у меня есть понял, как работает navigator.geolocation
. Я также понял, как работает navigator.permissions
для геолокации и ее трех состояний (предоставлено, подтверждено, отказано).
Вот что я не понимаю. Используя Google Chrome с устройства Android на сайте, который запрашивает ваше местоположение, выполните следующие действия:
- Активируйте местоположение вашего устройства.
- Очистите и сбросьте настройки сайта (чтобы в следующий раз при перезагрузке вы увидели приглашение, запрашивающее у пользователя разрешение на использование службы определения местоположения).
- Перезагрузите страницу (появится приглашение - Кстати,
permission.state
установлен на prompt
). - ДО вы нажимаете на
allow
, деактивируйте местоположение вашего устройства. - Нажмите на
allow
.
Следующее, что вы должны увидеть, это следующее приглашение:
Это единственный способ, которым я удалось воспроизвести это приглашение.
Почему это приглашение не появляется, когда пользователь загружает страницу, когда местоположение устройства деактивировано?
Есть ли какой-либо способ программно добавить эту функцию в приложение?
Если у кого-нибудь есть какие-либо подробные сведения о том, как это работает, поделитесь им с нами.