Визначення координат в Android

Нотатки по визначенню координат в Android:

  1. В AndroidManifest.xml мають бути такі пермішини:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

Перший дає підтримку більш точніших сервісів позиціювання e.g. GPS, другий дає підтримку менш точніших e.g. Network Location.

  1. В емуляторі може бути виключений GPS — перевірте це

  2. Якщо ви передаєте координати через DDMS в емулятор, а

lm.getLastKnownLocation(LocationManager.GPS_PROVIDER)

Вертає null, спробуйте «geo fix»:

Виконайте:

telnet localhost 5554

В стрічці вводу введіть

geo fix -80.1111 26.2222 4392

де перші два числа є широта і довгота.

  1. Приклад коду для отримання координат:
LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Location l = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
Log.d("myapp", l.getLatitude());
  1. Перший приклад, другий приклад

Коментарі 1

zenyk - 21 травня 2010, 11:56

Два обговорення чому LocationManager може бути null: перше, друге.

Коментувати
© 2009 - 2020, Розробка - соціальна ІТ спільнота.
Контакти: info@rozrobka.com
Правила користування