2012-06-19 18 views
11

Tengo dos dispositivos. Uno es HTC Wildfire S y el otro es HTC 1V. Usé el Geocoder.getFromLocationName() en mi aplicación. Se ejecuta con éxito en el HTC wildfire S. Pero en el HTC 1V recibí el siguiente error. ¿por qué vino? Como puedo resolver esto? Por favor Alguien puede ayudarme.android - Geocoder.getFromLocationName() no funciona en el dispositivo ICS

Código

Geocoder geoCoder = new Geocoder(getBaseContext(), Locale.getDefault()); 
//s is the address 
List<Address> addresses = geoCoder.getFromLocationName(s, 5); //Here i got the following Exception. 

error

06-18 16:28:17.933: W/System.err(4960): java.io.IOException: Service not Available 
06-18 16:28:17.953: W/System.err(4960):at android.location.Geocoder.getFromLocationName(Geocoder.java:178) 

Ubicación Tab

enter image description here

+0

Eso es sólo una advertencia de que el geocodificador no está disponible, tiene usted de acceso al Internet en el uno V? El Geocoder necesita acceso a Internet para recuperar el resultado. EDITAR: Tu aplicación no está fallando en esta etapa, ¿o sí? –

+1

Sí, tengo el permiso de Internet. – naresh

+0

Sí, pero ¿el dispositivo tiene conectividad? ¿Puedes navegar por la web en el dispositivo en el momento de la prueba? –

Respuesta

-1
GeoPoint point = new GeoPoint(
         (int) (LATITUDE * 1E6), 
         (int) (LONGITUDE * 1E6)); 

String n; 

public void someRandomMethod() { 
     n = convertPointToLocation(point); 
} 



public String convertPointToLocation(GeoPoint point) { 
     String address = ""; 
     Geocoder geoCoder = new Geocoder(
       getBaseContext(), Locale.getDefault()); 
     try { 
      List<Address> addresses = geoCoder.getFromLocation(
        point.getLatitudeE6()/1E6, 
        point.getLongitudeE6()/1E6, 1); 

      if (addresses.size() > 0) { 
       for (int index = 0; index < addresses.get(0).getMaxAddressLineIndex(); index++) 
        address += addresses.get(0).getAddressLine(index) + " "; 
      } 
     } 
     catch (IOException e) { 
      e.printStackTrace(); 
     } 

     return address; 
    } 
+1

No proporcione el código de su respuesta. ¿Por qué esta es * la * respuesta? –

+1

Este código no está relacionado con el problema ... – UmbySlipKnot

4

Finalmente encontré la respuesta: https://code.google.com/p/android/issues/detail?id=38009

Reinicie su dispositivo para que Geocoder funcione. Espero que ayuda a alguien

Nota: algunos dicen que va a funcionar si se utiliza la API de Google 16

+0

¿Realmente funciona si uso Google API 16? con API 17 no funciona ... – UmbySlipKnot

+0

Este error venía en Google Map API V1 ... lo probé en Google Map v2 ... con algunos cambios de sintaxis, por supuesto, y funciona muy bien en todos los dispositivos Android. Nota: para Google MAp V2 ya no es necesario importar Google APIs –

+0

En mi aplicación con V2 Map no funciona ... ¿A qué tipo de importación se refiere? – UmbySlipKnot

Cuestiones relacionadas