Géocodage ne va pas sur Oreo

voix
0

J'ai une demande qui doit recueillir l'adresse d'un marqueur sur l'API Google Maps. Je l'ai testé ce code et il fonctionne très bien sur les appareils qui exécutent 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());
        }

Mais lorsque je tente de fonctionner sur Android 8.1 appareils, il retourne un journal d'erreur:

E / erreur géocodage: java.io.IOException: Netcode: -1000, NetRes: {}

J'ai essayé de le chercher mais n'a trouvé aucune solution. Comment puis-je réparer cela?

Créé 06/09/2018 à 07:43
source utilisateur
Dans d'autres langues...                            


1 réponses

voix
0

Comme Gencoder doc dit: Utilisez la méthode IsPresent () pour déterminer si une mise en œuvre de géocodage existe.

alors appeler la méthode IsPresent () d'une part, et de vérifier manuellement l'état du réseau de l'appareil.

Si toujours pas, vous avez besoin peut - être créer la mise en œuvre de géocodage personnalisé, ce lien est utile.

Créé 06/09/2018 à 08:11
source utilisateur

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