iOS: получение обновлений местоположения в фоновом режиме только в автомобиле - PullRequest
0 голосов
/ 22 мая 2018

Я ищу непрерывный, энергоэффективный способ для отслеживания пройденного расстояния на автомобиле в фоновом режиме.Конечная цель - рассчитать сумму пробега, пройденного пользователем на автомобиле.Я предполагаю, что это будет работать так же, как и «Не беспокоить во время вождения».

Я собираюсь собрать значительные обновления местоположения и измерить расстояние между ними с помощью API-интерфейса маршрута MapKit.Также я хотел бы определять, когда пользователь начинает движение с автомобилем, а затем на основании этого запускать / останавливать обновления местоположения.

Также просто упомянуть - точность определения местоположения не важна, потому что мне не нужночтобы вычислить сверхточное расстояние, например, я мог позволить себе иметь ошибку 50-100 км на каждые несколько тысяч км.

Пока все хорошо, но я не совсем уверен, когда я делаю правильный подход или яЯ что-то упустил.Также я не понял, как использовать CoreMotion в фоновом режиме.

В части вопросов:

  1. Я в правильном направлении, используя комбинацию:
    • значительные обновления местоположения
    • API маршрута MapKit
    • CoreMotion
  2. Есть ли способ получать уведомления в фоновом режиме, когда пользователь запускается /остановился, чтобы двигаться с автомобилем?
  3. Можно ли определить, было ли выполнено обновление местоположения при движении с автомобилем?
  4. Можно ли связать обновление местоположения с прошлыми действиями по перемещению?
  5. Какие-либо указания, если я смотрю на это с совершенно неправильной точки зрения?

1 Ответ

0 голосов
/ 17 февраля 2019

Спасибо @CocaCola за напоминание о том, что я действительно должен опубликовать мое обновление здесь.

Итак, я сделал PoC, где я экспериментировал со значительными локациями, посещениями и основными движениями.

Я дошел до того, что смог обнаружить относительно хорошие начальные и конечные местоположения вождения.

Сложная часть вычисляет расстояние, поэтому я использовал MapKit, чтобырассчитать кратчайший маршрут движения между двумя точками, учитывая другие точки поворота, сообщенные во время поездки.Проблема в том, что маршруты в городе иногда были очень неточными, особенно если вы объезжаете одно и то же место дважды или более.В целом, эта техника будет работать довольно точно, если вы отслеживаете длительные поездки.

Вы можете найти приложение PoC здесь: https://github.com/KoCMoHaBTa/AutoLog

...