问题描述
直接使用LocationManager
的数据收集应用程序已更新为使用FusedLocationProviderApi
.使用LocationManager
,大多数设备在收集位置时都能快速报告5m精度或更佳的精度.使用FusedLocationProviderApi
时,报告的最佳精度为10m.
A data collection app that used LocationManager
directly was updated to use FusedLocationProviderApi
. With LocationManager
, most devices quickly report 5m accuracy or better when collecting location. With FusedLocationProviderApi
, the best accuracy ever reported is 10m.
我刚刚安装了一个位置演示应用程序,并看到了相同的行为( https://github.com/will-quast/android-location-demo ).在融合位置"活动中,如果仅显示GPS位置,则随着我对天空的了解更好,精度也会发生变化,并且可能会下降到2m.如果仅显示融合,则得到与LocationManager
报告的相同的点.这很有道理-我将Android设置为仅将GPS用于位置,并且优先级设置为PRIORITY_HIGH_ACCURACY
,因此我希望这两点始终相同.但是,使用融合提供程序显示的最佳精度是10m.
I have just installed a location demo app and see the same behavior (https://github.com/will-quast/android-location-demo). In the Fused Location activity, if I only show GPS location, the accuracy changes as I get a better view of the sky and it can go down to 2m. If I only show fused, I get the same point as reported by LocationManager
. This makes sense -- I have Android set to use GPS only for location and priority is set to PRIORITY_HIGH_ACCURACY
so I expect the two points to always be the same. But the best accuracy ever displayed is 10m with the fused provider.
为什么融合提供者的报告准确性从未低于10m?这是否记录在某处?有什么办法解决?还是在需要准确性时始终使用LocationManager
?
Why does the fused provider never report an accuracy less than 10m? Is this documented somewhere? Is there any way around it or should LocationManager
always be used when a sense of accuracy is needed?
FusedLocationProviderClient
当前不是一个选项,因为它需要更新Google Play,并且此应用程序在Google Play更新量过大的资源有限的区域中使用. 在设置为仅使用GPS的Android设置下,它也从未报告过10m以下的准确度.
FusedLocationProviderClient
is not currently an option because it requires an update to Google Play and this app is used in resource-constrained areas where a Google Play update is prohibitively large. It also never reports an accuracy below 10m with Android settings set to use GPS only.
编辑4/9-相关问题:
- 位置准确度分布发生剧烈变化,从2月15日开始
- location.getAccuracy()异常且非常出人意料的问题
- FusedLocationApi性能问题:准确性似乎上限为10.0米
- Cordova地理位置定位精度上限为10米
- Dramatic shift in location accuracy distribution starting February 15
- Wierd and very unexpected issue with location.getAccuracy()
- FusedLocationApi Performance Issue: Accuracy seems capped at 10.0 meters
- Cordova geolocation accuracy gets capped at 10 meters
推荐答案
已确认为Google Play服务错误在Google问题跟踪器上. Play Services 13.4.0预计将允许精度降低到3m的修复程序.目前尚不清楚为什么将其上限限制为3m,而不是使用原始位置来源报告的精度.
This was confirmed as a Google Play Services bug on the Google issue tracker. A fix that allows accuracies down to 3m is projected for Play Services 13.4.0. It's unclear why it will be capped at 3m rather than using the accuracy reported by the raw location source.
这篇关于为什么FusedLocationProviderApi的报告准确性永远不会超过10m?有文件记录吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!