Я наблюдаю ошибку при получении текущего местоположения в "Браузере телефона" с помощью API обратного геокода HERE, выдает ошибку, изображение прикреплено. Geolocationpositionerror {Код: 1, сообщение: «Пользователю отказано в разрешении»} , но пользователи предоставляют доступ к местоположению, и он работал нормально на мобильном телефоне, пока пару дней назад
При использовании того же URL-адреса в настольном браузере API по-прежнему работают нормально, вы можете помочь мне понять, почему такое различие может быть? Вот URL-адрес платформы https://www.meanstreets.in/
Ниже приведен фрагмент кода Vue. js, который выполняет эту задачу:
this.platform = new H.service.Platform ({"app_id": 'myID', "app_code": 'myCode', 'useHTTPS': true}); this.geocoder = this.platform.getGeocodingService ();
asyn c getLocation () {
let vm = this;
return new Promise((resolve, reject) => {
navigator.geolocation.getCurrentPosition(pos => {
let reverseGeocodingParameters = {
prox: `${pos.coords.latitude},${pos.coords.longitude}`,
mode: 'retrieveAddresses',
maxresults: 1
};
this.geocoder.reverseGeocode(
reverseGeocodingParameters,
res => {
let results = res.Response.View;
if(results.length === 0) {
resolve('No match.')
} else {
resolve(results[0].Result[0].Location);
console.log("It's resolving")
}
},
e => reject(e)
);
}, error => {
if (error.code == error.PERMISSION_DENIED)
console.log(error) #Printing error in this line
vm.permission = false;
reject(error);
});
if(!("geolocation" in navigator)) {
reject(new Error('Geolocation is not available.'));
alert("Geolocation not supported for this, browser. Try it on Chrome")
}
});
},