0

我们制作了一个跟踪应用程序,其中我们使用融合位置提供程序 API 来跟踪用户位置。GoogleApiClient 也与 LocationServices api 结合使用。

在应用程序中,我们以 2 分钟的时间间隔跟踪位置。有时位置可能在某些情况下不可用,例如用户在地下室,gps 无法提供位置,并且没有 wi-fi 或移动网络可用于获取位置。

让我们有每个请求的位置可用性表。

下午 2 点 确定 2:02 确定 2:04 没有位置 2:06 没有位置 2:08 确定

表格中共有五个位置请求。

下午 2 点和 2:02 位置可用。

2:04 和 2:06 位置不可用。(用户在地下室或其他 GPS、wifi 和移动网络无法提供位置的地方)

在 2:08 再次我们有可用的位置。

位置请求在 2:04 时会发生什么情况,它将继续尝试获取位置或被 android 操作系统杀死?

在 2:06 将再次调用新的位置请求。在这种情况下,它将替换先前的位置请求,或者将进行位置请求的队列?这意味着总共 2 个位置请求将继续尝试获取位置。

2:08 位置可用时是否会取消所有请求并为最近的位置请求提供位置?

4

1 回答 1

0

FusedLocationProviderAPI 使用最容易获得的任何位置服务。如果您每 2 分钟请求一次位置更新,则该服务将提供最新的可用位置。

因此,如果位置不可用,则无需取消请求。

话虽如此,如果您想在此范围内对位置请求进行微观管理,您可以计算最新位置是否与经度/纬度 2.00 度的可接受偏差发生了变化。

于 2015-07-03T14:38:17.893 回答