【问题标题】:Getting the current location of a device using the on{X} api使用 on{X} api 获取设备的当前位置
【发布时间】:2012-07-08 20:46:57
【问题描述】:

我一直在使用 on{X} api,我正在尝试获取一些位置数据,但是尽管我尝试了很多,但我无法弄清楚如何获取 /current/ 位置。


文档:

这是他们的例子:

    // create GPS listener with update interval of 5 sec  
    // you also use CELL or PASSIVE providers here  

    var listener = device.location.createListener('GPS', 5000); 

    // register on location changed  

    listener.on('changed', function(signal) {  

    // on receiving location print it and stop the provider 

       console.info('Lat: ' + signal.location.latitude);  
       console.info('Lon:' + signal.location.longitude);  
       listener.stop();  
    });

    // start the GPS listener 

    listener.start();

但是,这似乎仅在更改位置时才有效。我如何获得当前的位置数据(我相信一定有办法)。

我当前的代码:

var lat;
var lon;
listener.on('changed', function (signal) {
var lat = signal.location.latitude;
var lon = signal.location.longtitude;
listener.stop();
});
listener.start();
//the rest of my code which just sends the data back to a webserver (this bit works)

但是,当我检查它们的内容时,lat 和 lon 都注册为“未定义”。 (因为设备没有移动。)

【问题讨论】:

    标签: javascript android api location onx


    【解决方案1】:

    所以在玩了一段时间的 api 之后,我发现了我哪里出错了。

    我需要在locListener.stop(); 之后添加我想要从位置数据访问的任何数据的定义,尽管我不完全理解它为什么或如何工作,这是一个修复程序,以下代码对我有用。 (我还添加了一些地图内容;))

    var loc;
    var locListener = device.location.createListener('CELL', 100);
    
    locListener.on('changed', function (signal) {
        // stop listening to location changed events after getting the current location
        locListener.stop();
    
        var mapUrlPattern = 'https://feeds.onx.ms/maps?wp=lat,lon';
        var mapUrl =  mapUrlPattern.replace(/lat/g, signal.location.latitude).replace(/lon/g, signal.location.longitude);
    
        loc = mapUrl;
    });
    
    locListener.start();
    

    【讨论】:

      猜你喜欢
      • 2012-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多