Геокодер не идет на Орео - PullRequest
       47

Геокодер не идет на Орео

0 голосов
/ 06 сентября 2018

У меня есть приложение, которое должно собирать адрес с маркера в Google Maps API. Я протестировал этот код, и он отлично работает на устройствах под управлением Android 6.0:

Geocoder geocoder = new Geocoder(this, Locale.getDefault());
        try {
            List<Address> addressList1 = geocoder.getFromLocation(currentLatitude,currentLongitude,1);
            Address addressCurrent = addressList1.get(0);
            full_address = addressCurrent.getAddressLine(0); //Detail address
            country = addressCurrent.getCountryName();
            //locality =  addressCurrent.getLocality(); //sub-district
            admin_area = addressCurrent.getAdminArea(); //City
            sub_admin_area = addressCurrent.getSubAdminArea(); //District
            road_name = addressCurrent.getThoroughfare(); // road
            Toast.makeText(this, full_address, Toast.LENGTH_SHORT).show();
        }catch (IOException e){
            Toast.makeText(this, "No Data", Toast.LENGTH_SHORT).show();
            Log.e("error geocoder", e.toString());
        }

Но когда я пытаюсь запустить на устройствах Android 8.1, он возвращает журнал ошибок:

E / ошибка геокодера: java.io.IOException: NetCode: -1000, NetRes: {}

Я пытался найти его, но не нашел решения. Как я могу это исправить?

1 Ответ

0 голосов
/ 06 сентября 2018

Как Gencoder doc скажем: Используйте метод isPresent (), чтобы определить, существует ли реализация геокодера.

поэтому сначала вызовите метод isPresent () и вручную проверьте состояние сети устройства.

Если ошибка по-прежнему отсутствует, возможно, вам нужно создать собственную реализацию Geocoder, эта ссылка полезна.

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