Геолокация Ionic 3 не работает, когда GPS отключен - PullRequest
0 голосов
/ 08 февраля 2019

У меня установлен плагин для ионной геолокации

"@ionic-native/geolocation": "^4.15.0"

Я также пробовал "4.6.0" и "4.20.0".Он работает абсолютно нормально, когда я оставляю свой GPS включенным перед переходом на эту страницу.Но когда GPS не включен, он не будет просить меня включить его, выдает ошибку на консоли и переносить с ней неопределенные координаты.

Я написал метод getCurrentPosition в constructor / ionViewDidLoad.Таким образом, даже если пользователь включит его на этой странице, метод не будет вызываться, и координаты остаются неопределенными.

Ниже приведен код

this.geolocation
  .getCurrentPosition()
  .then(resp => {
    console.log(resp);
    this.longitude = resp.coords.longitude;
    this.latitude = resp.coords.latitude;
  })
  .catch(error => {
    console.log("Error getting location", error);
  });

Я не знаю, придется ли мне даватьручные разрешения или что ??Я делал то же самое раньше пару месяцев назад, и все было хорошо.Впервые я сталкиваюсь с такой проблемой.Пожалуйста, помогите мне выбраться из этого.

Ответы [ 2 ]

0 голосов
/ 08 марта 2019

Установите плагин диагностики здесь: https://ionicframework.com/docs/v3/native/diagnostic/,, затем проверьте, включено ли местоположение с помощью diagnostics.isLocationAvailable(), если нет, предложите пользователю включить его на экране настроек устройства, используя diagnostics.switchToLocationSettings().

0 голосов
/ 08 февраля 2019

Вы должны вручную запросить разрешение и попросить пользователя включить местоположение.Вы можете сделать это с помощью диагностического плагина (@ ionic-native / Diagnostic).Вы должны использовать следующие методы:

diagnostic.isLocationEnabled()
diagnostic.isLocationAvailable()
diagnostic.requestLocationAuthorization()

Если вы хотите обновить местоположение после получения разрешения, вы можете использовать этот метод:

diagnostic.registerLocationStateChangeHandler()

Вы можете пройти обратный вызов, чтобы проверить, включено ли местоположение и доступно ли вам то, что вам нужно.

...