Este repositorio contiene una selección de mis mejores proyectos de Android, elegidos por su complejidad técnica y relevancia profesional. Los proyectos se encuentran organizados dentro de la carpeta Android/.
Descripción: Una aplicación que consume la API de noticias (NewsAPI) para mostrar las últimas novedades en distintas categorías. Tecnologías:
- Kotlin
- Volley (para peticiones asíncronas)
- Gson (para parseo de JSON)
- RecyclerView
- Picasso (carga asíncrona de imágenes)
Warning
Advertencia de Seguridad (API REST): La llave de la API de NewsAPI (apiKey) ha sido removida del código por motivos de seguridad y reemplazada por YOUR_API_KEY_HERE en MainActivity.kt y MainActivity2.kt.
¿Cómo correrlo localmente? Para probar esta aplicación de forma local, necesitas tu API Key original (la cual está guardada de forma segura en el archivo .env local). Nunca subas tus llaves reales a repositorios públicos como GitHub, ya que esto podría generar cargos económicos si los servicios son de pago o que tu llave sea inhabilitada por abuso.
Descripción: Un proyecto que integra los servicios de Google Cloud Platform y Firebase. Tecnologías:
- Kotlin
- Firebase (Servicios de configuración mediante
google-services.json) (El archivogoogle-services.jsonestá excluido del control de versiones por seguridad).
Descripción: Una aplicación con estructura CRUD (Create, Read, Update, Delete) enfocada en el manejo de un ecosistema escolar con entidades como Alumnos, Materia y Calificaciones.
Tecnologías:
- Kotlin
- SQLite (Base de datos local en Android)
Descripción: Aplicaciones enfocadas en la comunicación de red avanzada, conectando a bases de datos relacionales externas (MySQL) y resolviendo el reto de capturar, empaquetar y subir archivos binarios (imágenes) a un servidor.
Descripción: Una aplicación de agenda que implementa autenticación básica (SharedPreferences) y consume un servicio web (PHP/MySQL) usando Volley para desplegar y gestionar una lista de contactos. Tecnologías:
- Kotlin
- Volley (Peticiones GET al backend)
- SharedPreferences (Manejo de sesión de usuario)
- RecyclerView
Descripción: Un cronómetro interactivo con funciones de inicio, pausa, reinicio y guardado de "vueltas" (laps). Es una excelente demostración del uso de asincronismo moderno en Android sin bloquear el hilo principal. Tecnologías:
- Kotlin
- Coroutines (Para la actualización en tiempo real de la interfaz)
- ListView y ArrayAdapter
Descripción: Una aplicación que utiliza el Content Provider (MediaStore) para acceder a la galería del dispositivo, permitiendo al usuario seleccionar múltiples imágenes. Las imágenes seleccionadas se envían a un Fragment que las despliega en un pase de diapositivas (slideshow) automatizado y asíncrono utilizando Corrutinas.
Tecnologías:
- Kotlin
- Fragments (Comunicación Activity-Fragment)
- MediaStore (Acceso a archivos multimedia locales)
- Coroutines (Manejo del slideshow sin bloquear la UI)
Descripción: Un proyecto enfocado en la implementación del sistema moderno de notificaciones de Android, demostrando el uso de canales de notificación (Notification Channels) y el manejo de permisos en tiempo de ejecución. Tecnologías:
- Kotlin
- NotificationManagerCompat y NotificationChannel
- PendingIntent (Para manejar la acción al tocar la notificación)
- BigPictureStyle (Notificaciones ricas con imágenes)
- Runtime Permissions (Permisos
POST_NOTIFICATIONSpara Android 13+)
Nota de control de versiones: Los proyectos de nivel introductorio (ejercicios simples, pruebas de vistas, etc.) han sido almacenados en la carpeta no git y excluidos explícitamente de este repositorio mediante el archivo .gitignore para mantener un portafolio limpio y profesional.