Programación Android, Gson – Librería para parsear documentos JSON

En nuestras aplicaciones que conecten con servicios web será muy común realizar la comunicación a través de documentos JSON, y hace tiempo explicamos cómo parsear nosotros esos documentos a datos que pudiéramos utilizar en nuestra aplicación. Sin embargo esta tarea es bastante tediosa si tenemos que realizarla para cada una de nuestras conexiones, ya que podemos llegar a necesitar un sinfín de conexiones distintas, y cada una con su propio código para parsear los datos, y para evitar eso tenemos, entre otras, Gson (de código abierto y desarrollada por Google), una librería para parsear documentos JSON. Además, la potencia de este tipo de librerías es que no sólo nos permite pasar de un documento JSON a objetos Java, sino también a la inversa, convertir uno de nuestros objetos en un documento JSON.

En este tutorial vamos a aprender a utilizar Gson, para parsear en ambas direcciones (documento>java / java>documento) y de paso aprovecharemos para aprender a importar librerías que existen en el repositorio Maven a nuestro proyecto en Android Studio.

Qué es Maven?

En primer lugar vamos a entender qué es Maven, y por qué vamos a utilizarlo para obtener nuestra librería Gson. Según Wikipedia Maven es una herramienta de software para la gestión y construcción de proyectos Java creada por Jason van Zyl, de Sonatype, en 2002. Es similar en funcionalidad a Apache Ant (y en menor medida a PEAR de PHP y CPAN de Perl), pero tiene un modelo de configuración de construcción más simple, basado en un formato XML. Estuvo integrado inicialmente dentro del proyecto Jakarta pero ahora ya es un proyecto de nivel superior de la Apache Software Foundation.

Ahora que sabemos qué es Maven, el motivo por el que vamos a utilizar este repositorio en nuestra aplicación es porque Android Studio, a través del uso de Gradle, nos ofrece la posibilidad de descargar estas librerías directamente desde nuestro proyecto, sin necesidad de buscar archivos por internet para después importarlos al proyecto.

Y qué es Gradle?

Leer más…