Изменения в данных GPS, находящихся в том же месте

В моем приложении я рассчитал скорость на основе местоположения GPS.

Поскольку GPS-приемник может иметь разные координаты, даже находясь в одном и том же месте, мое приложение записывает скорость, даже когда телефон находится на моем столе.

Мне нужно избегать данных GPS, если я получаю их в том же месте.

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

До этого я хотел бы знать, есть ли другой способ избежать такого рода данных?

2 ответа

Решение

После работы над многими методами я запрограммировал это с учетом.

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

И это прекрасно сработало для меня:)

AS согласно Javadoc для запроса метода public void requestLocationUpdates (long minTime, float minDistance, критерии критериев, намерение PendingIntent), найденный здесь

minTime минимальный интервал времени между обновлениями местоположения, в миллисекундах minDistance
минимальное расстояние между обновлениями местоположения, в метрах

так что вы можете использовать minDistance параметр, чтобы избежать получения обновлений на очень короткие расстояния...

Другие вопросы по тегам