如何使用sencha touch获取gps位置?

时间:2014-03-12 05:52:00

标签: android gps sencha-touch-2

我已经创建了sencha touch应用程序,我想尝试使用下面的代码获取android设备的当前位置。

Ext.create('Ext.util.Geolocation',  
autoUpdate: true,  
allowHighAccuracy: true,  
listeners: {  
locationupdate: function(geo) {  
    latitude=geo.position.coords.latitude;  
    longitude=geo.position.coords.longitude;  
    if(Global.currentUserPositionMarker)  
    {  
        latlng1=new google.maps.LatLng(latitude, longitude);  
        currentPosMarker.setPosition(latlng1);  
    }  
   }  
  }  
});  

在我的设备中,gps图标将闪烁,但无法获取设备gps位置的当前位置。 它始终从我的网络提供商处获得当前位置 我想经常从设备gps possition更新当前位置。 就像Android的谷歌地图应用程序一样,gps图标总是稳定的,我想在我的应用程序中喜欢它。

2 个答案:

答案 0 :(得分:2)

启动您的设备WI-FI,然后尝试加载您的应用 因为从gps获取当前位置对我有用 从gps获取当前位置我面临同样的问题 我还要提出问题See The Question

答案 1 :(得分:2)

在GeoLocation对象中添加频率参数。

Ext.create('Ext.util.Geolocation',  
autoUpdate: true,
frequency:1000,  
allowHighAccuracy: true,  
listeners: {  
locationupdate: function(geo) {  
    latitude=geo.position.coords.latitude;  
    longitude=geo.position.coords.longitude;  
    if(Global.currentUserPositionMarker)  
    {  
        latlng1=new google.maps.LatLng(latitude, longitude);  
        currentPosMarker.setPosition(latlng1);  
    }  
   }  
 }  
});

频率值以毫秒为单位,用于按给定时间更新地理位置。