【发布时间】:2018-07-17 01:09:51
【问题描述】:
我需要在我的 Android 应用中使用准确的 GPS 位置。我正在使用这个 Cordova 插件来实现 GPS 定位:https://github.com/pmwisdom/cordova-background-geolocation-services
这是请求 GPS 位置的代码:
if (locationClientAPI == null) {
connectToPlayAPI();
} else if (locationClientAPI.isConnected()) {
locationRequest = LocationRequest.create()
.setPriority(translateDesiredAccuracy(LocationRequest.PRIORITY_HIGH_ACCURACY))
.setFastestInterval(4000)
.setInterval(5000)
.setSmallestDisplacement(0);
LocationServices.FusedLocationApi.requestLocationUpdates(locationClientAPI, locationRequest, locationUpdatePI);
this.isRecording = true;
if(isDebugging) {
Log.d(TAG, "- Recorder attached - start recording location updates");
}
} else {
locationClientAPI.connect();
}
它适用于许多 Android 手机,但在某些(例如三星 Galaxy S8)上,准确性非常差。通常 500-1500m 对应用程序完全不可用。我还观察到,如果我同时打开谷歌地图,位置也到处都是,直到我启动路线指南——然后它几乎立刻就变成了现场。如果我使用我的应用程序,当路线指南打开时,一切都非常准确和漂亮。
在 Android 设置中,我的应用可以使用最高的 GPS 精度。
如何在不启用谷歌地图的路线引导的情况下实现高精度。
【问题讨论】:
-
您在哪个版本的 Android 上遇到了准确性问题?
-
@DaveAlden Android 7.0
标签: android google-maps cordova gps google-location-services