Интервал обновления GPS быстрее с хорошим сигналом? - PullRequest
3 голосов
/ 07 октября 2010

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

Я знаю, что код mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, updateInterval*1000, 0, this); не заставит GPS принимать обновления точно с заданным интервалом, но, на мой взгляд, это не должно зависеть от силы сигнала и сильно колебаться.

Есть идеи?

ОБНОВЛЕНИЕ: см. Комментарий

Ответы [ 2 ]

3 голосов
/ 16 октября 2010

Я подозреваю, что радио GPS работает таким образом, что оно либо подключено к спутникам GPS, либо нет. Когда он подключен, Android SDK отправляет вам обновления так часто, как они доступны на оборудовании GPS. Если у него нет полного подключения GPS, он возвращается к отправке обновлений AGPS в соответствии с тем, что вы запросили.

Если вы хотите обновлять только каждые 10 секунд, вам следует сохранить последнее полученное значение времени Location в вашем слушателе, а когда вы получите новое Location, проверьте его время со старым значением; игнорируйте его, если он слишком частый (или сделайте что-нибудь более умное, например, проверьте точность и замените старое значение и т. д.).

0 голосов
/ 07 октября 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...