科尔多瓦中的 navigator.geolocation.getCurrentPosition 仅提供 10 米的精度
Posted
技术标签:
【中文标题】科尔多瓦中的 navigator.geolocation.getCurrentPosition 仅提供 10 米的精度【英文标题】:navigator.geolocation.getCurrentPosition in cordova gives only 10 meter accuracy 【发布时间】:2018-08-02 04:25:17 【问题描述】:navigator.geolocation.getCurrentPosition
在 cordova/android 中提供最大 10 米的精度。我没有使用任何插件进行地理定位。但其他一些应用程序显示同一地点的 3 米精度。
navigator.geolocation.getCurrentPosition
不会提供更好的准确性?
【问题讨论】:
在哪个平台上?你在用enableHighAccuracy: true
吗?
@jcesarmobile 是的,我正在使用。
在哪个平台上?
@jcesarmobile android.
@HabeebPerwad 我把你的问题和我的问题联系起来了,有同样的问题***.com/questions/49348489/…
【参考方案1】:
遗憾的是,Android 的 cordova-plugin-geolocation
不提供任何本机代码,只有最少的代码来处理 Android 6+ 的权限。
为了获取位置,它使用地理定位的 WebView 实现,所以如果使用 enableHighAccuracy: true
你没有得到你期望的准确性,你无能为力(可能会向谷歌抱怨,所以他们在未来的系统 WebView 更新中改进它)
结果可能会因供应商/Android 版本而异。
因此,如果您需要更高的准确性,您应该搜索使用本机代码获取位置的不同插件,而不是使用 WebView 提供的插件。其中有一些,最好搜索“背景地理位置”,因为提供背景地理位置的那些使用本机代码。
【讨论】:
有任何参考说明 webview 最多只能提供 10 米的精度? 他们在tag 0.3.6之前拥有原生代码 不,没有关于 WebView 地理定位实现或准确性的内部信息,正如我所说,它可能因不同的设备或供应商而异。 0.3.6版本的插件很老了,native代码真的过时了,无法处理Android 6+的权限,最好找个替代品。 我以前能爬到 4 米,现在升级到奥利奥后也能爬到 10 米。 @jcesarmobile 另外,有人在本机代码方面面临同样的问题,请参阅***.com/questions/49044731/…以上是关于科尔多瓦中的 navigator.geolocation.getCurrentPosition 仅提供 10 米的精度的主要内容,如果未能解决你的问题,请参考以下文章