粗定位有多准确?

How accuarated is coarse location?

所以,我的应用程序依赖于用户在某个区域,比方说半径为 2 公里,我使用高精度 GPS 来确定用户是否在这个半径内,但由于某种原因,一些用户是加载屏幕上的实验延迟做 GPS 需要预热并获取信号,有时这会导致无限加载屏幕或 30 - 40 秒加载。

所以我需要想出一个解决方案,我所做的是从我的 locationprovider 中删除 HIGH_ACCUARCY 并添加 LOW_BATTERY 提供商,根据我的阅读,它将使用网络位置(粗略定位)或 GPS(如果需要)。

所以我做到了

  locationCallback = LocationCallback()
        locationRequest = LocationRequest.create()
        locationRequest.interval = 10000
        locationRequest.fastestInterval = 2000
        locationRequest.priority = LocationRequest.PRIORITY_BALANCED_POWER_ACCURACY

现在,我想知道这个位置有多好,我的意思是,对于 2 公里的半径,如果用户在里面,用户的纬度和经度是否有可能在半径之外?

我想知道这个与其他网络提供商的给定位置是否还不错,因为我需要与当前位置至少相差 1 或 2 个街区。

那么,网络(粗略定位)是否适合此用例?我所在的位置和它给出的经纬度有很大区别吗?

非常感谢!

来自the reference

public static final int PRIORITY_BALANCED_POWER_ACCURACY

Used with setPriority(int) to request "block" level accuracy.

Block level accuracy is considered to be about 100 meter accuracy. Using a coarse > accuracy such as this often consumes less power.

所以 100 米精度。应该适合你的情况。