Geocoder getFromLocation() not null, mais a une taille de 0 toujours

Je suis en train de récupérer mon adresse de l'emplacement à l'aide de l'API Google v2.

Voici ce que je fais:

Geocoder geocoder = new Geocoder(this, Locale.getDefault());
            List<Address> addresses = null;
            String addressText = "";
            try {
                while (addresses==null){
                    addresses = geocoder.getFromLocation(userLocation.latitude,
                            userLocation.longitude, 1);
                }

                if (addresses != null && addresses.size() > 0) {
                    Address address = addresses.get(0);
                    addressText = String.format(
                            "%s, %s, %s",
                            address.getMaxAddressLineIndex() > 0 ? address
                                    .getAddressLine(0) : "", address
                                    .getLocality(), address.getCountryName());
                }
            } catch (IOException e) {
                e.printStackTrace();
            }

J'ai lu plusieurs posts et a constaté que la getFromLocation() demande n'est pas toujours récupérer un résultat. J'ai donc essayé de boucle.

Cela ne tombe pas en panne mais addressText est toujours "le", des idées pourquoi?
INTERNET autorisations ont été donné à mon application. Je n'utilise pas le GPS.

userLocation n'est pas nulle, donc ce n'est pas le problème, je l'utilise que pour ajouter un marqueur sur la carte et il fonctionne très bien. Il semble y avoir un problème avec le geocoder strictement.

Avez-vous essayé d'augmenter le nombre de résultats? par exemple, addresses = geocoder.getFromLocation(userLocation.latitude, userLocation.longitude, 10); Techniquement cela ne devrait pas d'importance, juste un "intérêt"!
Nan, malheureusement cela ne fonctionne pas. mais merci pour votre réponse rapide:)

OriginalL'auteur Adrian Olar | 2013-07-31