Как устранить ошибку «minTime в Android 2.3.4 не работает»

#android #gps

#Android #gps

Вопрос:

Комикс… Я тестировал в android 1.6 2.3.3 очень простом местоположении gps… в основном это:

 LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
Location myLocation = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
lm.requestLocationUpdates( LocationManager.GPS_PROVIDER, 10000, 0, listener);
  

Я тестировал как в [1.6, так и в 2.3.3], в течение 10 секунд ожидая уведомлений [показывая тост в onLocationChanged …], Но, как ни странно, в 2.3.4 его версии android просто игнорируется minTime [не имеет значения, 10000 или 120000], он постоянно ищет изменения…

У кого-нибудь есть эта проблема? Может быть, проблема не в 2.3.4, но у кого-нибудь еще тоже была эта проблема?

Ответ №1:

Это работает так, как задокументировано. minTime это предложение, а не правило. Цитирование документации:

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

Комментарии:

1. Но я пытался понять, почему он просто игнорирует это. Это даже не намек… он полностью игнорируется. Использование его как 0 или как 200000 приводит к тому же. И это собственный ресурс для использования, поэтому я полагаю, что он должен работать хотя бы как подсказка [некоторое значение, близкое к указанному] в каждой отдельной системе Android…