Android: не удается получить текущее местоположение

#android #position #location

#Android #позиция #Расположение

Вопрос:

Для моего приложения я использовал простой метод getLastKnownLocation , чтобы получить текущую позицию пользователя.

Проблема, конечно, в том, что у меня не всегда есть истинное текущее положение. Итак, я нашел метод, OnLocationChanged позволяющий получить новую позицию пользователя.

Я использовал этот код :

 locManager = (LocationManager) this.getSystemService(LOCATION_SERVICE);

Criteria crit = new Criteria();
crit.setAccuracy(Criteria.ACCURACY_FINE);
typeLoc = locManager.getBestProvider(crit, false);
locManager.requestLocationUpdates(typeLoc, 0, 0, this);
  

Проблема в том, что моя функция onLocationChanged никогда не вызывается… почему?

Спасибо

РЕДАКТИРОВАТЬ : разрешения в XML :

 <uses-permission android:name="android.permission.ACCESS_GPS" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  

PS: я вижу, что есть googleplayservices, который позволяет получить текущее местоположение, но я хочу знать, почему это решение не работает. : (

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

1. Я предполагаю, что у вас установлены правильные разрешения в android.xml я прав?

2. попробуйте изменить минимальное время с 0 на большее (1000 мс)

3. Возможно, вы забыли <использует-разрешение android:name=»android.permission. ACCESS_LOCATION» />

4. ничего не меняет..

5. Возможная ошибка фреймворка: code.google.com/p/android/issues/detail?id=57707