#angularjs #ionic-framework #geolocation #ionic4
#angularjs #ионный фреймворк #геолокация #ionic4
Вопрос:
Я пытаюсь написать приложение, которое использует геолокацию для определения местоположения пользователя при открытии приложения. Я читал, что службы геолокации, используемые телефоном и компьютером, одинаковы, поэтому тестирование геолокации на компьютере является жизнеспособным.
У меня есть этот блок кода:
getPosition() {
console.log("Getting Position");
this.geolocation.getCurrentPosition().then((resp) => {
console.log("position = ");
this.lat = resp.coords.latitude;
this.long = resp.coords.longitude;
}).catch((error) => {
console.log("Error getting position");
this.testVar = 10;
});
console.log("After position block");
let watchT = this.geolocation.watchPosition();
watchT.subscribe((data) => {
//this.latitude = data.coords.latitude;
//this.longitude = data.coords.longitude;
});
}
И когда я запускаю его в браузере и проверяю консоль, печатаются «Получение позиции» и «После блока позиции», но ни «позиция =», ни «Ошибка получения позиции» не печатаются. Я полагал, что один из них должен будет печатать в зависимости от того, удалось ли это или не удалось.
Что я здесь делаю не так? Я ошибаюсь, предполагая, что могу проверить геолокацию на компьютере?
Комментарии:
1. Является
geolocation
ли плагин Cordova?2. Попробуйте добавить
let options = { enableHighAccuracy: true, timeout: 5000, maximumAge: 0 }
в свою геолокацию. например:this.geolocation.getCurrentPosition(options).then()....