android - PhoneGap 3.3 : how to have the best accuracy?

标签 android ios cordova geolocation

我使用 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 数据?

提前致谢。

问候。

最佳答案

好的,我找到了解决方案...

在文件 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。

再见。

关于android - PhoneGap 3.3 : how to have the best accuracy?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23271189/

相关文章:

java - Android Device Monitor 无法从 Android Studio 或终端启动 — 不支持的 major.minor 版本 52.0

Android Facebook 发布错误 xmlPaseEntityRef : no name

iphone - UItableView 中的 CustomCell 崩溃

android - Cordova - 由于联系人许可,Android 应用程序在启动时崩溃

android - Cordova InAppBrowser 不缩放加载的页面

javascript - 错误 :Execution failed for task ':app:processDebugManifest' . >

android - 运动布局阻止更新 recyclerview

java - 使用 Codename One NativeInterface 调用 native Android 库时仍然出现 Nullpointer

ios - 如何在 xCode 中保存一组 UIimages (swift)

ios - 在 iOS 中存储/读取 json 数据