Android融合位置提供程序返回缓存位置?

Android融合位置提供程序返回缓存位置?,android,fusedlocationproviderapi,Android,Fusedlocationproviderapi,我的应用程序有检测用户位置的功能,当我开始请求位置更新时,我有时间戳日志 LocationRequest mLocationRequest = LocationRequest.create(); mLocationRequest.setInterval(100); mLocationRequest.setPriority(LocationRequest.PRIORITY_LOW_POWER); mLocationRequest.setFastestInterval(100); long star

我的应用程序有检测用户位置的功能,当我开始请求位置更新时,我有时间戳日志

LocationRequest mLocationRequest = LocationRequest.create();
mLocationRequest.setInterval(100);
mLocationRequest.setPriority(LocationRequest.PRIORITY_LOW_POWER);
mLocationRequest.setFastestInterval(100);
long startLocationUpdateTime = SystemClock.elapsedRealtimeNanos();
LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, mLocationListener);
当我收到位置更新时,我也会记录位置修复的时间戳

@Override
public void onLocationChanged(Location location) {
   long locationElapsedTime = location.getElapsedRealtimeNanos();
   // start process location update from here
}
大多数情况下它工作正常,但我看到一些日志显示
startLocationUpdateTime
大于
locationElapsedTime
。我知道在这些情况下,融合位置提供程序返回缓存的位置数据,这些数据是在我请求位置更新之前计算的


我错了吗?谁能帮我解释一下为什么会这样?是否有强制融合位置提供者始终返回新位置的设置?

我希望它能帮助您:@ViralPatel谢谢,但没有多大帮助