получить скорость, с которой движется устройство - PullRequest
1 голос
/ 11 ноября 2009

Я использую CLLocation.speed для определения скорости движения устройства, но каждый раз получаю 0. Я пытался

speed = ([newlocation getDistanceFrom:oldlocation]/[newlocation.timeStamp timeIntervalSinceDate:oldlocation.timeStamp])

Проблема в том, что время от времени выдает неправильную скорость.

1 Ответ

1 голос
/ 11 ноября 2009

Есть небольшая конфигурация, которая поможет вам:

  1. CLLocationManager не отправит вам обновление, если пользователь не выйдет за пределы круга в своем текущем местоположении. Вы можете контролировать радиус круга (сделать его меньше), чтобы получать более точные обновления. См. distanceFilter .

  2. CLLocationManager имеет контроль точности, который вы хотите установить на его самый высокий уровень. См. требуемая точность .

Лучше всего постоянно вычислять эту «скорость» и использовать слабый фильтр нижних частот для сглаживания результатов.

См. Также этот вопрос для получения дополнительной информации: iPhone CoreLocation: Как получить наиболее точную скорость .

...