geocoder.getFromLocationName возвращает только null

Я схожу с ума последние два дня из-за ошибки IllegalArgumentException , которую я получаю в коде Android при попытке получить координаты из адреса или даже наоборот, получите адрес из долготы и широты. Это код, но я не вижу ошибки. Это стандартный фрагмент кода, который легко найти в поиске Google.

public GeoPoint determineLatLngFromAddress(Context appContext, String strAddress) {
    Geocoder geocoder = new Geocoder(appContext, Locale.getDefault());
    GeoPoint g = null; 
    try {
        System.out.println("str addres: " + strAddress);
        List<Address> addresses = geocoder.getFromLocationName(strAddress, 5);
        if (addresses.size() > 0) {
            g = new GeoPoint(
               (int) (addresses.get(0).getLatitude() * 1E6),
               (int) (addresses.get(0).getLongitude() * 1E6)
            );
        }
    } catch (Exception e) {
        throw new IllegalArgumentException("locationName == null");
    }
    return g;
 }

Это разрешения из файла manifest.xml:

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

У меня тоже объявлен ключ Google API:

Из приведенного выше фрагмента кода геокодер не является нулевым , как и адрес или appContext , и я спотыкаюсь здесь: geocoder.getFromLocationName (strAddress, 5);

Я много искал в Google и не нашел ничего, что работало бы, и самая важная информация, которую я нашел, это:

Классу Geocoder требуется серверная служба, которая не включена в основном фреймворке Android.

Так вот, я сбит с толку. Что мне нужно вызвать, импортировать, добавить, использовать в коде .... чтобы это работало?

Из приведенного выше фрагмента кода геокодер не null , ни то, ни другое адрес или appContext , и я спотыкаюсь здесь: geocoder.getFromLocationName (strAddress, 5);

Я много поискал в Google и не нашел ничего, что работало, и самая важная информация, которую я нашел, такова:

Классу Geocoder требуется серверная служба, которая не включена в базовую структуру Android.

Так вот, теперь я сбит с толку. Что мне нужно вызвать, импортировать, добавить, использовать в коде .... чтобы это работало?

Из приведенного выше фрагмента кода геокодер не null , ни то, ни другое адрес или appContext , и я спотыкаюсь здесь: geocoder.getFromLocationName (strAddress, 5);

Я много поискал в Google и не нашел ничего, что работало, и самая важная информация, которую я нашел, такова:

Классу Geocoder требуется серверная служба, которая не включена в основную структуру Android.

Так вот, я сейчас сбит с толку. Что мне нужно вызвать, импортировать, добавить, использовать в коде .... чтобы это работало? ни адрес , ни appContext , и я спотыкаюсь здесь: geocoder.getFromLocationName (strAddress, 5);

Я много поискал в Google и не нашел ничего подходящего работал, и самая важная информация, которую я нашел, такова:

Классу Geocoder требуется серверная служба, которая не включена в базовую структуру Android.

Так вот, теперь я сбит с толку. Что мне нужно вызвать, импортировать, добавить, использовать в коде .... чтобы это работало? ни адрес , ни appContext , и я спотыкаюсь здесь: geocoder.getFromLocationName (strAddress, 5);

Я много поискал в Google и не нашел ничего подходящего работал, и самая важная информация, которую я нашел, такова:

Классу Geocoder требуется серверная служба, которая не включена в базовую структуру Android.

Так вот, теперь я сбит с толку. Что мне нужно вызвать, импортировать, добавить, использовать в коде .... чтобы это работало? Я использую Google API 2.2, уровень API 8. Если кто-то нашел решение для этого или указатель на документацию, чего я не обнаружил, сообщите нам об этом.

6
задан JJD 4 October 2013 в 19:56
поделиться