Cómo realizar solicitudes GraphQL en Android | Autor: Krishan Madushanka | Julio de 2021


En este artículo, demostraré cómo realizar solicitudes GraphQL usando Android. Para Android, utilizo las siguientes bibliotecas y técnicas.
Lenguaje de programación Kotlin
Coroutine de transformación y Kotlin para realizar llamadas a la API
Daga 2 para inyección de dependencia
Espero que conozca las técnicas anteriores para comprender este artículo. Por lo tanto, me concentro principalmente en usar GraphQL para realizar solicitudes y discutir qué es GraphQL y por qué aparece.
Antes de que apareciera GraphQL, existía REST. Las siguientes son algunas de las desventajas de REST, GraphQL proporciona la respuesta.
- Sobreadquisición
- Varias solicitudes de múltiples recursos
- Solicitud de red de cascada para datos anidados
- Todo cliente necesita conocer la ubicación de cada servicio
- El control de versiones de API a veces puede volverse engorroso
¿Qué es GraphQL?
Lenguaje gráfico Una generaciónEl lenguaje de consulta y el tiempo de ejecución del lado del servidor utilizados para la API dan prioridad a proporcionar a los clientes los datos que solicitan, no más. -Sombrero rojo
Marque aquí la palabra «idioma de consulta». Por tanto, podemos consultar lo que queramos.
¿Cuándo usar GraphQL?
- Aplicaciones para dispositivos como teléfonos móviles, relojes inteligentes y dispositivos de Internet de las cosas, donde el uso del ancho de banda de estos dispositivos es muy importante.
- Aplicaciones que necesitan obtener datos anidados en una sola llamada.(Por ejemplo, blogs o plataformas de redes sociales que necesitan obtener publicaciones y comentarios anidados y detalles del comentarista).
- El lugar donde la aplicación recupera datos de varias API de almacenamiento diferentes.(Por ejemplo, paneles que obtienen datos de múltiples fuentes, como servicios de registro, backends de estadísticas de consumo, herramientas de análisis de terceros para capturar interacciones del usuario final, etc.)
¡Empecemos a codificar!
Usaré la API de github GraphQL que cualquiera puede usar, que se puede usar para probar las consultas GraphQL asociadas con los repositorios de github existentes. Aquí, intentaré obtener y mostrar la información principal del usuario (imagen, nombre, nombre de inicio de sesión, correo electrónico, seguidores, seguidores), el tercer repositorio fijo y el décimo repositorio superior del usuario seleccionado en github. Puede usar el explorador de github para probar sus consultas graphql.
El código completo se puede descargar desde Esta URL de github.
Primero agregue las siguientes dependencias en su archivo build.gradle de nivel de aplicación.
La siguiente es mi consulta para obtener los datos de usuario anteriores.
Para usarlo en su aplicación, necesita obtener un token de github. Para obtenerlo, vaya a este enlace y haga clic en «Generar token nuevo». Agregué mi token y consulta en un archivo constante como se muestra a continuación.
Ahora escriba la interfaz de Retrofit.
Ahora usaremos la inyección de dependencia Daga 2
Cree la clase NetModule para proporcionar dependencias gson y modernización
Agregue NetModule en la interfaz de AppComponent
Construya su componente de aplicación en la clase Aplicación
Luego llámelo y obtenga los datos.
El «retrofit» y el «gson» anteriores se obtienen inyectándolos en la clase usando Dagger 2.
¡Gracias! Encuentra el código completo de github.