1

Я пытаюсь получить местоположение пользователя с помощью кордово-геолокационного плагина, но, похоже, это очень странная проблема. Он работает, и я могу получить координаты в некоторых телефонах, в то время как в других он не работает и показывает ошибку тайм-аута. Кроме того, я не нахожу подобный шаблон в телефонах, которые он работает, и в тех, которые у него нет. Он работает в некоторых нугальных телефонах и не в другом. То же самое касается других версий и моделей. Нет никакой картины. Я занимаюсь подобными вопросами, но все еще не могу заставить его работать должным образом.Не удается найти местоположение с кордовым-геолокационным плагином (ошибка тайм-аута)

$scope.getCurrentLocation = function() { 
      var onSuccess = function (position) { 
       console.log('Latitude: ' + position.coords.latitude + '\n' + 
         'Longitude: ' + position.coords.longitude + '\n' + 
         'Accuracy: ' + position.coords.accuracy + '\n'); 
      }; 

      function onHighAerror(error) { 
       console.log('code: ' + error.code + '\n' + 
         'message: ' + error.message + '\n'); 
         //Low accuracy fallback 
         navigator.geolocation.getCurrentPosition(onSuccess, onLowAerror, {enableHighAccuracy: false, timeout: 15000, maximumAge: 60000}); 

      } 

      function onLowAerror(error) { 
       console.log('code: ' + error.code + '\n' + 
         'message: ' + error.message + '\n'); 
      } 

      navigator.geolocation.getCurrentPosition(onSuccess, onHighAerror, {enableHighAccuracy: true, timeout: 15000, maximumAge: 60000}); 
     }; 

ответ

0

Просто попробуйте следующий путь. Надеюсь, это будет полезно для вас. Более подробно можно узнать на this link

$scope.getCurrentLocation = function() { 
 
    $ionicPlatform.ready(function() { 
 

 
    var posOptions = { 
 
     enableHighAccuracy: true, 
 
     timeout: 50000, 
 
     maximumAge: 0 
 
    }; 
 

 
    $cordovaGeolocation.getCurrentPosition(posOptions).then(function(position) { 
 
     var latitude = position.coords.latitude; 
 
     var longitude = position.coords.longitude; 
 

 
    }, function(err) { 
 
     console.log(err); 
 
    }); 
 
    }); 
 
}

Также Проверьте следующие разрешения будут добавлены в ту же проблему AndroidManifest.xml

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.NETWORK_ACCESS" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /> 
+0

, работает на некоторых телефонах, а не на других –

+0

Can вы даете представление о том, что в устройствах ведьмы он работал, и он не работал. –

+0

Не работает в Nexus 5, Lg L90, Xiaomi Redmi 1S. Работает в Yu Yuphoria, Xperia Sp (CM Nougat), Xiaomi Mi 4 –

Смежные вопросы