Geocoder går ikke på Oreo

stemmer
0

Jeg har et program som må samle adresse fra en markør på Google Maps API. Jeg testet denne koden og det fungerer fint på enheter som kjører 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());
        }

Men når jeg prøver å kjøre på Android 8.1-enheter den returnerer en feillogg:

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

Jeg prøvde å søke etter det, men fant ingen løsning. Hvordan kan jeg fikse dette?

Publisert på 06/09/2018 klokken 07:43
kilden bruker
På andre språk...                            


1 svar

stemmer
0

Som Gencoder doc si: Bruk isPresent () metode for å bestemme hvorvidt en Geocoder gjennomføring eksisterer.

så ringe isPresent () -metoden for det første, og manuelt kontrollere enhetsnettverksstatus.

Hvis det fortsatt mislyktes, kanskje du trenger å opprette egendefinerte Geocoder implementering, denne linken er nyttig.

Svarte 06/09/2018 kl. 08:11
kilden bruker

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