我使用PhoneGap制作应用程序,我需要最好的地理位置。
我用这个:
var options = { enableHighAccuracy: true, timeout:30000};
navigator.geolocation.getCurrentPosition(success, fail, options);
我尝试使用以下方法优化搜索:
var options = { enableHighAccuracy: true, timeout:30000};
navigator.geolocation.watchPosition(success, fail, options)
但它返回大致相同的精度(在几种类型的地方10到40之间)。
此外,地理定位函数(getCurrentPosition和watchPosition)非常慢。通常会超时(30秒)。
我在网上做了很多研究,但我发现没有什么可以帮助我。你可以帮帮我吗?有没有一个很好的方法来获得最好的地理位置?是否可以使用PhoneGap,循环接收每秒gps数据?
提前谢谢你。
问候。
答案 0 :(得分:1)
好的,我找到了解决方案......
在文件app / platforms / android / src / org / apache / cordova / geolocation / GPSListener.java中:
我改变了:
this.locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 60000, 0, this);
通过
this.locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 2000, 0, this);
就像那样,我更快地接收GPS数据。我做了
watchID = navigator.geolocation.watchPosition(geolocalizeWatchSuccess, geolocalizeWatchError, { timeout: 20000 , enableHighAccuracy: true, maximumAge: 30000});
我抓住了最好的准确性。
显然这个问题来自phonegap 3.x。
再见。