Geocoder nu merge pe Oreo

voturi
0

Am o aplicație care trebuie să colecteze adrese de la un marker de pe Google Maps API. Am testat acest cod și funcționează bine pe dispozitive care rulează 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());
        }

Dar când încerc să rula pe Android 8.1 dispozitive returnează un jurnal de erori:

geocoder E / eroare: java.io.IOException: NetCode: -1000, NetRes: {}

Am încercat să-l căuta, dar nu a găsit nici o soluție. Cum pot rezolva această problemă?

Întrebat 06/09/2018 la 07:43
sursa de către utilizator
În alte limbi...                            


1 răspunsuri

voturi
0

Așa cum Gencoder doc spune: Utilizați metoda isPresent () pentru a determina dacă există o implementare geocoder.

asa ca suna metoda isPresent () în primul rând, și verificați manual starea de rețea a dispozitivului.

Dacă încă nu a reușit, poate că aveți nevoie de a crea personalizate de punere în aplicare geocoder, acest link este de ajutor.

Publicat 06/09/2018 la 08:11
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more