2017-02-10 17 views
0

Я использовал ниже код для определения текущего местоположения в угловом приложении. это отлично работает со всеми браузерами на рабочем столе, но не работает на мобильном устройстве, пожалуйста, найдите код ниже для более полного понимания.Чтобы определить текущее местоположение на мобильном устройстве

if (navigator.geolocation) { 
    navigator.geolocation.getCurrentPosition(onPositionUpdate,locNotFound,{frequency:5000,maximumAge: 0, timeout: 100, enableHighAccuracy:true}); 
} else { 
    // nothing 
} 

function locNotFound() { 
    console.log('location not found'); 
} 
function onPositionUpdate(position) { 
    var lat = position.coords.latitude; 
    var lng = position.coords.longitude; 
    var url = "https://maps.googleapis.com/maps/api/geocode/json?latlng=" + lat + "," + lng + "&sensor=true"; 
    $http.get(url) 
     .then(function(result) { 
      console.log(result); 
     }); 
} 

Как вы можете видеть, функция locNotFound() вызывается на мобильном устройстве. который он не должен делать, потому что GPS включен в мобильном устройстве.

+0

какое устройство? –

+0

Я пробовал в Android (хром, мозилла) и iOS (сафари) не работал для меня. –

ответ

0

Я просто могу дать вам частичный ответ для Android.

Пожалуйста, откройте Chrome Browser на Android, щелкните по значку в правом верхнем углу (точки дерева), нажмите «Настройки», нажмите «Настройки сайта» и, пожалуйста, проверьте настройки для местоположения. Насколько я знаю, это отключено по умолчанию.

Так что я думаю, ваша проблема связана с ограничениями безопасности

С уважением

Майкл

+0

Спасибо, Майкл за ваши данные. Я попробовал это, но он все еще не работает для меня. –