ionic 3 geo-location не работает во второй раз - PullRequest
0 голосов
/ 03 октября 2018

У меня проблема с использованием Geolocation на Android устройстве.

Я создаю Ionic 3 приложение.Я использую Geolocation ([https://ionicframework.com/docs/native/geolocation/ 13]).Я использую приведенный там пример кода.Проблема в том, что код работает в браузере, но всякий раз, когда я загружаю его на устройство Android, он не работает.

Когда я запускаю приложение на устройстве, выдается предупреждение о разрешении местоположения.Я нажимаю Разрешить.Затем в трее android появляется значок с надписью «Поиск GPS».После истечения тайм-аута я получил ошибку из-за тайм-аута и отсутствия местоположения.

Странная мысль: если я закрою свое приложение, откройте google maps (или другое приложение, использующее позицию gps) и снова откройте мое приложение.работает как надо.

Я не знаю, что делать.

Разрешения в порядке:

и все установлено правильно.

МожетКто-нибудь, пожалуйста, помогите?

Ответы [ 3 ]

0 голосов
/ 03 октября 2018

import {LocationAccuracy} из '@ ionic-native / location-precision';

объявить переменную навигатора Above @ Component

watchPosition () {

     this.locationAccuracy.request(this.locationAccuracy.REQUEST_PRIORITY_HIGH_ACCURACY).then(
        () => {
                var options = {
                    timeout: 500,
                    maximumAge: Infinity
                };

                this.watch = navigator.geolocation.watchPosition((data) => {
                    let latlng: LatLng = new LatLng(data.coords.latitude, data.coords.longitude);


                }, (error) => {
                    console.log("error watch", error)
                }, options);

            }
        }, error => {
            alert('Error requesting location permissions' + JSON.stringify(error))
        }); 
}

}

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

Я понял, что на самом деле мне нужно передать apikey с таким, как

<script src="http://maps.googleapis.com/maps/api/js?key=YOUR_KEY"></script>

на странице индекса

, без этого ключа он иногда работает, но не уверен каждый раз.

Примечание: этот ключ генерируется только в том случае, если у вас есть действующий аккаунт Gmail (с указанием номеров DOB / CreditCard), хотя он бесплатный.

0 голосов
/ 03 октября 2018

попробуйте это, оно должно работать

ionic cordova run android --prod

- prod делает сборку продукции apk

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...