Nada avanza más rápido que el desarrollo para Android y nada más dinámico que Jetpack compose para Android el cual es la norma para crear vistas dejando atrás los conflictivos XMLs.
Y como no hay tiempo qué perder pongamos manos a la obra
Para este tutorial estaremos usando el los datos que usamos en el artículo Api Rest con JavaScript.
En un nuevo proyecto Android vamos a otorgar permisos de acceso a Internet ya que nuestro archivo de datos se encuentra en un servidor accesible mediante una URL.
Aquí te explico cómo instalar Android Studio y crear una App básica desde cero.
Las dependencias (librerías externas) del proyecto vienen señaladas en el archivo de aplicación: build.gradle. Las más importantes a considerar son:
- Hilt
- Retrofit
Moshi Y Coil aunque no abarcaremos su uso en este proyecto, pero se agrega para futuras referencias ya que este proyecto va a crecer en funciones y complejidad.
Vamos a crear un nuevo Package que contendrá el modelo "Estatus" el cual es un reflejo de la información que contiene el arreglo Json que estaremos usando.
Necesitamos definir las contantes del API que estaremos consumiendo mediante la app. Esto ayuda a mantener un orden en los orígenes de datos.
Con una Interface podemos distribuir la funcionalidad del API a otras clases.
Ahora viene lo interesante y quizás lo más complejo de este proyecto. Android usa Inyección de dependencias para simplificar los flujos de datos en una aplicación, lo cuales benéfico tanto en el desarrollo como el mantenimiento de aplicaciones muy complejas o de gran flujo de datos.
Mediante la anotación @Module establecemos que el Singleton estará disponible para ser "inyectado" mediante Hilt.
Atención a lo siguiente: Cuando usamos Hilt como dependency manager, debemos establecer la clase Application de Android bajo la anotación @HilAndroidApp e indicar en AndroidManifest.xml del proyecto el nombre de la clase de Application.
Enseguida vamos a crear un ViewModel que asegure el flujo de datos hacia nuestra vista. Un ViewModel es como un proveedor de datos que despacha únicamente información a una vista.
Ahora que casi todo está listo vamos a crear una vista que despliegue una lista de elementos con la información que estamos cargando remotamente.
Vamos arrancar desde Device Manager un dispositivo virtual donde se ejecutará nuestra aplicación.
¡Error! Al arrancar la app lo primero en aparecer es un error causado para un dato nulo. Esto se puede prevenir haciendo que la propiedad del modelo Estatus: color pueda majear los nulos de manera segura como lo muestra la siguiente imagen:
Una vez corregido esto, la aplicación corre sin problemas:
Proyecto completo en Github
Como pueden ver hacer aplicaciones Android que consuman api rest remotos sigue siendo una actividad regular en el desarrollo de aplicaciones móviles. Este tutorial es un ejemplo básico para principiantes que deseen adentrarse en el dinámico y lucrativo mundo del desarrollo de aplicaciones móviles nativas en 2025.
Si tienes dudas o comentarios déjame un mensaje.
Comentarios