Geocoder non va in Oreo

voti
0

Ho una domanda che deve raccogliere indirizzi da un marcatore su Google Maps API. Ho provato questo codice e funziona bene su dispositivi che eseguono 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());
        }

Ma quando provo a funzionare su dispositivi Android 8.1 restituisce un log degli errori:

E / Errore di geocoder: java.io.IOException: netcode: -1000, NetRes: {}

Ho provato a cercarlo, ma non ha trovato soluzione. Come posso risolvere questo problema?

È pubblicato 06/09/2018 alle 07:43
fonte dall'utente
In altre lingue...                            


1 risposte

voti
0

Come Gencoder doc fare: Utilizzare il metodo isPresent () per determinare se esiste un'implementazione Geocoder.

così chiamata metodo isPresent () in primo luogo, e controllare manualmente lo stato della rete periferica.

Se ancora non è riuscito, forse avete bisogno di creare un'implementazione personalizzata Geocoder, questo link è utile.

Risposto il 06/09/2018 a 08:11
fonte dall'utente

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