отслеживание местоположения - PullRequest
0 голосов
/ 30 августа 2010

У меня есть GPS-трекер, который теперь отлично работает, кроме случаев, когда iPhone потерял связь с GPS.Когда соединение потеряно, трек делает одну или несколько точек в случайном месте, как вы можете видеть на этом изображении:

трек http://www.alluneed.it/track.jpg

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

Будет ли это хорошо?Есть ли еще какие-нибудь приятные трюки, чтобы сделать это?

Ответы [ 3 ]

1 голос
/ 31 августа 2010

возможно я нашел свою ошибку:

в

locationManager:didFailWithError:

когда я получаю kCLErrorNetwork или любую другую ошибку, кроме kCLErrorDenied, я выполняю определение местоположения stopupdating и местоположение startatating

Теперь приложение работает хорошо, завтра я делаю другой тест и публикую здесь результат.

0 голосов
/ 30 августа 2010

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

0 голосов
/ 30 августа 2010

Попробуйте проверить время обновления местоположения, когда у GPS нет сигнала (время указано в параметре местоположения, если я правильно помню).

Возможно, время какое-то постоянное, и выможно проверить, превышает ли разница между текущим временем и временем местоположения какое-либо значение, чтобы узнать, является ли местоположение реальным или нет.

...