Изменения в данных GPS, находящихся в том же месте
В моем приложении я рассчитал скорость на основе местоположения GPS.
Поскольку GPS-приемник может иметь разные координаты, даже находясь в одном и том же месте, мое приложение записывает скорость, даже когда телефон находится на моем столе.
Мне нужно избегать данных GPS, если я получаю их в том же месте.
Я подумываю добавить какую-то логику, основанную на "опоре", чтобы я мог решить, действительно ли телефон движется или получает данные о местоположении с перепадами с любого направления.
До этого я хотел бы знать, есть ли другой способ избежать такого рода данных?
2 ответа
После работы над многими методами я запрограммировал это с учетом.
Я получаю скорость на основе последних 5 мест. Я добавил логику, чтобы проверить направление для каждого местоположения со следующим местоположением, и если все направления имеют большую разницу, я предположил, что местоположения принимаются со случайных направлений, и поэтому устройство фактически не движется.
И это прекрасно сработало для меня:)
AS согласно Javadoc для запроса метода public void requestLocationUpdates (long minTime, float minDistance, критерии критериев, намерение PendingIntent), найденный здесь
minTime минимальный интервал времени между обновлениями местоположения, в миллисекундах minDistance
минимальное расстояние между обновлениями местоположения, в метрах
так что вы можете использовать minDistance
параметр, чтобы избежать получения обновлений на очень короткие расстояния...