Android onLocationUpdate не вызывается с помощью GPS_PROVIDER - PullRequest
4 голосов
/ 17 марта 2011

Привет
У меня есть сервис Android с помощью менеджера местоположений:

if(locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {<br> Log.i("service","start with GPS"); locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0,locationListener);<br> }

Тогда слушатель местоположения:

private LocationListener locationListener = new LocationListener() {<br> public void onLocationChanged(Location aLocation) {<br> Log.i("location listener", "location updated");<br> }<br> ... other methods ....<br> }

В манифесте установлена ​​авторизация для ACCESS_FINE_LOCATION.

Все отлично работает как в симуляторе, так и в телефоне (Xperia Android 1.6 до 2.2) для NETWORK_PROVIDER. Отлично работает в симуляторе для GPS_PROVIDER. Но когда я пытаюсь использовать GPS в устройствах, слушатель местоположения никогда не вызывается. В DDMS я вижу, что GPS на самом деле работает и извлекает местоположения, но никогда не вызывает методы слушателя. Хотя есть странное сообщение:

WARN / libloc_api (1173): loc_eng_report_position: игнорировать отчет о позиции, когда статус сеанса = 1

Я не вижу, что мне не хватает. Любая идея ? Благодаря.

1 Ответ

3 голосов
/ 17 марта 2011

Требуется время, чтобы определить местоположение.Время первого исправления (TTFF) зависит от множества факторов, таких как количество видимых спутников GPS, отношение сигнал / шум, чипсет GPS и т. Д. *

Вот хорошая статья , который поможет вам получить максимальную отдачу от GPS на телефонах Android.

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