navigator.geolocation.getCurrentPosition 在 cordova 中仅给出 10 米的精度

navigator.geolocation.getCurrentPosition in cordova gives only 10 meter accuracy

navigator.geolocation.getCurrentPosition in cordova/android 给出最大 10 米的精度。我没有使用任何插件进行地理定位。但其他一些应用程序显示同一地点的精度为 3 米。

navigator.geolocation.getCurrentPosition 不会提供更好的准确性吗?

遗憾的是 Android 的 cordova-plugin-geolocation 不提供任何本机代码,只有最少的代码来处理 Android 6+ 的权限。 为了获取位置,它使用地理定位的 WebView 实现,所以如果使用 enableHighAccuracy: true 你没有得到你期望的准确度,你无能为力(也许向 Google 投诉,以便他们改进它在未来的系统 WebView 更新中) 结果可能会因 vendors/Android 个版本而异。

因此,如果您需要更高的准确性,您应该搜索使用本机代码获取位置的不同插件,而不是使用 WebView 提供的插件。其中有一些,最好搜索 "background geolocation",因为提供后台地理定位的使用本机代码。