Cómo obtener valores json array en android?

El valor de respuesta JSON se parece a esto "types" : [ "sublocality", "political" ] . ¿Cómo obtener el primer valor de los tipos o cómo obtener la palabra sublocality?

 String string = yourjson; JSONObject o = new JSONObject(yourjson); JSONArray a = o.getJSONArray("types"); for (int i = 0; i < a.length(); i++) { Log.d("Type", a.getString(i);); } 

Esto sería correcto si estuviera analizando sólo la línea que proporcionó anteriormente. Tenga en cuenta que para acceder a los tipos de GoogleMaps geocode debe obtener una matriz de resultados, que address_components, a continuación, puede acceder a un objeto components.getJSONObject (índice).

Esta es una implementación simple que analiza sólo formatted_address – lo que necesitaba en mi proyecto.

 private void parseJson(List<Address> address, int maxResults, byte[] data) { try { String json = new String(data, "UTF-8"); JSONObject o = new JSONObject(json); String status = o.getString("status"); if (status.equals(STATUS_OK)) { JSONArray a = o.getJSONArray("results"); for (int i = 0; i < maxResults && i < a.length(); i++) { Address current = new Address(Locale.getDefault()); JSONObject item = a.getJSONObject(i); current.setFeatureName(item.getString("formatted_address")); JSONObject location = item.getJSONObject("geometry") .getJSONObject("location"); current.setLatitude(location.getDouble("lat")); current.setLongitude(location.getDouble("lng")); address.add(current); } } catch (Throwable e) { e.printStackTrace(); } } 

Debe analizar ese JSON para obtener esos valores. Puede utilizar las clases JSONObject y JSONArray en Android o utilizar una biblioteca como Google GSON para obtener los POJO de JSON.

Te insisto para que utilices GSON. Había creado una demostración para analizar la misma respuesta del mapa. Puedes encontrar la demostración completa here . También había creado una clase global del analizador del GSON que se puede utilizar para analizar cualquier respuesta que esté en JSON con facilidad.

  • Java / Android: java.lang.OutOfMemoryError mientras se construye un objeto JSON
  • JacksonParser databind y la causa principal "Encontró archivo duplicado para APK"?
  • Convertir ArrayList <MyCustomClass> a JSONArray
  • Los parámetros de clase anidados de Gson no tienen valores
  • Convierta el Array de Java normal o ArrayList a Json Array en android
  • ¿Cómo analizar el valor booleano de JSON?
  • Android - Error en la conexión http java.net.UnknownHostException:
  • Cómo rellenar el diseño de la tabla con la cadena JSON
  • ¿Cómo se puede leer un archivo json en Android usando Ionic y AngularJS Frameworks?
  • Diferentes formas de publicar valores json en Server
  • GSON. Cómo convertir json objeto a json array?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.