现在我有这样的位置更新设置:
private const val LOCATION_MIN_TIME_INTERVAL = 200L
private val locationRequest = LocationRequest().apply {
interval = LOCATION_MIN_TIME_INTERVAL
fastestInterval = LOCATION_MIN_TIME_INTERVAL / 2
priority = LocationRequest.PRIORITY_HIGH_ACCURACY
}
override fun onLocationResult(locationResult: LocationResult?) {
super.onLocationResult(locationResult)
val speed = locationResult?.lastLocation?.speed
}
当然,如果使用 200 毫秒,电池的电量可能会更快,但我相信要实时获取当前车速(例如以 KM/H 或 MPH 为单位)需要这样的间隔,所以它应该适合这种情况,不是吗?
假设一辆汽车的最大加速度为每秒 30 公里/小时。这意味着如果我们想要 1 公里/小时的最小精度,我们需要每 1/30 秒或每 33 毫秒获取一次数据。 无论如何,我认为不可能获得低于 1000 毫的值,请参见此处: 以精确的时间间隔获取 GPS 位置