Плагин геополяции Кордовы работает только с местоположением GPS телефона. Если телефон GPS не заблокирован (например, находится внутри здания), тогда он должен взять COARSE_LOCATION, т. Е. WIFI или сотовую башню.Кордонский геолокационный плагин выпуск
Я проверил его, предоставив ему только разрешение только ACCESS_COARSE_LOCATION и комментируя код для ACCESS_FINE_LOCATION. В этом случае мы получаем код ошибки: 3 (timeout).
$scope.showpopup=function(status){
console.log("show pop up function called");
var cont;
switch (status) {
case 1:
cont = "User denied the request for Geolocation."
break;
case 2:
cont = "Location information is unavailable."
break;
case 3:
cont = "The request to get user location timed out."
break;
default:
cont = "An unknown error occurred."
break;
}
$ionicPopup.alert({
title: 'Gps error',
content: cont
});
};
navigator.geolocation.getCurrentPosition(
function(position){
//Variables to use for showing latitude and longitude by position.coords .
},function(error){
$scope.showpopup(error.code);
},{timeout:10000,maximumAge:60000,enableHighAccuracy:true});
Благодаря @Neil Cresswell мы попробуем. – Abhishek
Извините, я найду это очень интересным и не пойму меня неправильно здесь, что я должен исправить вас, @Neil Cresswell, но это не совсем так. Этот плагин основан на [html5 geolocation api] (https://dev.w3.org/geo/api/spec-source.html), в котором говорится, что атрибут enableHighAccuracy содержит подсказку о том, что приложение хочет получать лучшие возможные результаты », поэтому вы сообщаете api, что вы хотите использовать gps/glonass/galileo/beidou, но нет никакой гарантии, что из этих спутниковых геотексов будут появляться согласные, так что api также может отказаться от менее точных технологий, таких как Wi-Fi/кв.м. – Blauharley
Как указано в предложении: приложение хочет использовать высокоточные технологии, если это возможно в конкретной ситуации, тогда он будет использовать высокоточные технологии, иначе он будет использовать менее точные технологии автоматически, если их можно будет использовать прямо сейчас. Его также можно прочитать [здесь] (http://stackoverflow.com/questions/15310742/if-i-have-access-fine-location-already-can-i-omit-access-coarse-location), когда enableHighAccuracy установленный как истинный, так и высокие и менее точные технологии разрешены с помощью andriod, который может использоваться, например, от текущего местоположения. – Blauharley