¿Que es GSON?

Es una excelente librería creado por Google para simplificar la manipulación y tratamiento de archivos en formatos en JSON (Notación de Objetos de JavaScript) usado mayormente para intercambio de información en APIS o Web Services entre aplicaciones.

Y asi podemos crear proyecto móviles en Android con mucha agilidad y con esta librería ahorraríamos tiempos y costos en cualquier proyecto que abordemos como desarrolladores para manipular un formato de archivo en JSON.

Lo cual podemos serializar y desarializar objetos en formatos JSON con mucha facilidad y precisión. Y usa una licencia open source que es Apache 2.0.

Agregar la librería a nuestro Proyecto

Agregar en el archivo build.gradle de nuestro modulo del proyecto.

  implementation 'com.google.code.gson:gson:2.8.6'

Veamos un Ejemplo

Creamos un archivo con el nombre Persona.java y tendra una clase con los atributos que tendrá nuestro JSON.

package com.xenosbit.testingmovil;

public class Persona  {

    private String nombre;
    private String apellido;
    private int edad;
    private String trabajo;
    private String pais;

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public String getApellido() {
        return apellido;
    }

    public void setApellido(String apellido) {
        this.apellido = apellido;
    }

    public int getEdad() {
        return edad;
    }

    public void setEdad(int edad) {
        this.edad = edad;
    }

    public String getTrabajo() {
        return trabajo;
    }

    public void setTrabajo(String trabajo) {
        this.trabajo = trabajo;
    }

    public String getPais() {
        return pais;
    }

    public void setPais(String pais) {
        this.pais = pais;
    }


}

Ahora nuestro archivo principal NuevoActivity.java tendrá el código sgte:

package com.xenosbit.testingmovil;

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;

import com.google.gson.Gson;

import java.util.List;

public class NuevoActivity extends AppCompatActivity {

    String data = "{ \"nombre\":\"Roger\", \"apellido\":\"Natividad\", \"edad\":30, \"trabajo\":\"Tecnologica\", \"pais\":\"Peru\" }";
    
    // creamos un objeto con la instancia de Gson
    Gson gson = new Gson();

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        String json = data;
        
        // Creamos una lista con la clase Persona creada
        // usamo el metodo fromJson
        List<Persona> personaList = (List<Persona>) gson.fromJson(data, Persona.class);

        personaList.get(1);


    }
}

Como vimos utilizar esta librería Gson nos puede simplificar muchas lineas de código y tiempo para aumentar nuestra productividad.

nota