📜  离子-科尔多瓦地理位置

📅  最后修改于: 2020-12-08 05:15:51             🧑  作者: Mango


该插件用于将地理位置插件添加到Ionic应用程序。

使用地理位置

有一种使用地理位置插件的简单方法。我们需要从命令提示符窗口安装此插件。

C:\Users\Username\Desktop\MyApp>cordova plugin add cordova-plugin-geolocation

以下控制器代码使用两种方法。第一个是getCurrentPosition方法,它将向我们显示用户设备的当前纬度和经度。第二个方法是watchCurrentPosition方法,当位置更改时,该方法将返回设备的当前位置。

控制器代码

.controller('MyCtrl', function($scope, $cordovaGeolocation) {
   var posOptions = {timeout: 10000, enableHighAccuracy: false};
   $cordovaGeolocation
   .getCurrentPosition(posOptions)
    
   .then(function (position) {
      var lat  = position.coords.latitude
      var long = position.coords.longitude
      console.log(lat + '   ' + long)
   }, function(err) {
      console.log(err)
   });

   var watchOptions = {timeout : 3000, enableHighAccuracy: false};
   var watch = $cordovaGeolocation.watchPosition(watchOptions);
    
   watch.then(
      null,
        
      function(err) {
         console.log(err)
      },
       function(position) {
         var lat  = position.coords.latitude
         var long = position.coords.longitude
         console.log(lat + '' + long)
      }
   );

   watch.clearWatch();
})

您可能还注意到posOptionswatchOptions对象。我们正在使用超时来调整允许通过的最大时间长度(以毫秒为单位),并将enableHighAccuracy设置为false。可以将其设置为true以获得最佳结果,但是有时可能会导致一些错误。还有一个maximumAge选项可用于显示如何接受旧位置。它使用毫秒,与超时选项相同。

当我们启动应用程序并打开控制台时,它将记录设备的纬度和经度。当我们的位置发生变化,lat值会发生变化。