gpt4 book ai didi

android - 获取位置更新,即使我在同一个地方很长时间

转载 作者:行者123 更新时间:2023-11-30 01:35:19 26 4
gpt4 key购买 nike

我正在使用 GoogleApiClient 获取当前 location 以及定期 location 更新。我已将 requestLocation 参数设置如下:

private static int UPDATE_INTERVAL = 10000; // 10 sec
private static int FATEST_INTERVAL = 5000; // 5 sec
private static int DISPLACEMENT = 10; // 10 meters

然后像这样发出请求:

LocationServices.FusedLocationApi.requestLocationUpdates(
mGoogleApiClient, mLocationRequest, this);

所以我的问题是,当我没有移动 10 米时,它也会调用并告诉我位置。我想要像谷歌一样完美的 location 更新,因为我需要同样的。当我移动到一定距离时,它会给出多次位置。我必须检查我的应用程序是否用户在不断移动如果用户移动/经过一段距离,那么我必须检查并做必要的事情。

谢谢。

最佳答案

位置可能非常不准确(这就是您在使用距离为 10m - 100m 的固定电话时遇到的情况)。要克服这个问题,请检查新位置的准确性。如果精度为 40 米并且与 lastLocation 的距离为 50 米,则您知道有移动。但是,如果精度为 100 米,那么 50 米的距离并不能确定有移动。

因此,如果位置更新的准确性比频率更重要,您可能需要在使用前检查位置的准确性。例如:

private Location lastGoodLocation = null;

// Other methods

@Override
public void onLocationChanged(Location loc) {

if (lastGoodLocation == null || lastGoodLocation.distanceTo(loc) > loc.getAccuracy()) {
lastGoodLocation = loc;
// do something with loc
}
}

您可能还想考虑其他 strategies使用位置更新时。

关于android - 获取位置更新,即使我在同一个地方很长时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35174760/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com