FusedLocationProviderClient返回的位置不正确

时间:2019-06-03 06:18:40

标签: android google-api location android-location fusedlocationproviderclient

我正在使用Google的fusedlocationproviderclient来使用前台服务在android上实时跟踪用户的位置。 我注意到有些时候fusionlocationproviderclient连续多次返回相同的位置。 截至目前,我正在观察,有时融合locationproviderclient返回的位置非常不准确(约700m)

我以前曾使用Location_Services跟踪位置,但为了减少电池消耗,将其移至融合的providerproviderclient。 我已将fusionlocationproviderclient优先级设置为高精度。 我已将minDisplacement设置为100m。

这是我的位置对象

private void createLocationRequest() {
    mLocationRequest = new LocationRequest();
    mLocationRequest.setInterval(10000);
    mLocationRequest.setFastestInterval(10000);
    mLocationRequest.setSmallestDisplacement(100);
    mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
}

我希望它应该返回准确的位置。 当我在静态地图上显示跟踪的位置时,会错误地定位到正确的位置。

1 个答案:

答案 0 :(得分:0)

我会检查您在清单中设置的位置权限类型。

您有2个空位:

ACCESS_COARSE_LOCATION-这将允许您访问大概的位置

ACCESS_FINE_LOCATION-这将允许您访问一个精确的地址,我相信这是您所需要的。