似乎phonegap没有使用GPS卫星,而是使用蜂窝网络的地理定位。我对精度不太满意,总是在150-1000米之间。GPS活动标识也不显示。
是否有办法强制android应用程序使用GPS卫星,即使有其他方法可用?是否有任何方法可以覆盖默认功能来激活GPS卫星使用?
Thanks in advance
PhoneGap实际上与Android平台一样使用GPS卫星地理定位。如果你的手机启用了GPS,你接收到的位置应该比150米更精确。当你调用geolocation.getCurrentPosition()
或geolocation.watchPosition()
方法时,PhoneGap的GeoListener
类请求一个GPS提供者和一个NETWORK提供者,然后它为两个提供者创建一个侦听器,如果它们存在的话。这就是为什么你得到的精度范围很广的原因。
因此,如果您想要强制高精度位置,您可以在传递给上述方法的geolocationOptions
参数上将其设置为true。检查API: geolocationOptions
navigator.geolocation.watchPosition(
onSuccess, onError,
{ maximumAge: 3000, timeout: 5000, enableHighAccuracy: true });
如果你想有更多的控制和更准确的位置请求行为,你可以扩展PhoneGap的API来做到这一点。