diff --git a/README.md b/README.md index 2076aa6..4b53c1a 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Sistema de Seguimiento de Recolección de Basura -Una aplicación Android nativa diseñada para optimizar y transparentar el servicio de recolección de residuos. La app permite a los ciudadanos dar seguimiento en tiempo real a los camiones recolectores basado en las rutas oficiales, gestionar múltiples direcciones, reportar incidencias y recibir alertas automatizadas, adaptando su interfaz según el rol del usuario (Ciudadano o Trabajador). +Una aplicación Android nativa diseñada para optimizar y transparentar el servicio de recolección de residuos. La app permite a los ciudadanos dar seguimiento en tiempo real a los camiones recolectores basado en las rutas oficiales, gestionar múltiples direcciones, reportar incidencias y recibir alertas automatizadas. --- @@ -8,8 +8,6 @@ Una aplicación Android nativa diseñada para optimizar y transparentar el servi ### Autenticación y Usuarios * **Firebase Authentication:** Registro e inicio de sesión con email y contraseña. -* **Persistencia de Sesión:** El usuario permanece logueado al abrir y cerrar la app de forma continua. -* **Roles Dinámicos:** Soporte para dos tipos de usuarios (**Usuario común** y **Trabajador**) con almacenamiento de perfil en *Cloud Firestore*. * **Validación Estricta:** Comprobación de emails válidos, contraseñas seguras (mínimo 6 caracteres) y coincidencia de confirmación. ### Gestión de Direcciones (Múltiples) @@ -25,7 +23,6 @@ Una aplicación Android nativa diseñada para optimizar y transparentar el servi * `notificaciones.json`: Reglas operativas para el disparo de alertas. * **Mecanismo de Polling:** Actualización automática de datos en segundo plano cada 30 segundos (configurable). * **Visualización en Canvas Custom:** Renderizado gráfico personalizado que dibuja una línea horizontal de paradas con un camión animado que progresa según el tiempo real del dispositivo y los datos del servidor. -* **Detalle Extendido:** Diálogos emergentes con el desglose de paradas y estimaciones horarias por ruta. ### Notificaciones Push Locales Envío de alertas automáticas contextualizadas con la dirección afectada en tres estados críticos: @@ -34,8 +31,7 @@ Envío de alertas automáticas contextualizadas con la dirección afectada en tr 3. **Servicio Finalizado** al concluir el recorrido establecido. ### Sistema de Reportes e Incidencias -* **Para Usuarios:** Formulario con asunto y mensaje para reportar fallas en el servicio, guardados en Firestore con marca de tiempo. -* **Panel "CONTROL" (Trabajadores):** Sección exclusiva para el personal donde se listan de forma cronológica (más recientes primero) los reportes enviados por ciudadanos y otros trabajadores de la organización. +* **Para Usuarios:** Formulario con asunto y mensaje para reportar fallas en el servicio. ### Sección Educativa * Guía de clasificación de residuos en cuatro categorías fundamentales: Orgánico, Inorgánico reciclable, No reciclable y Peligroso. @@ -48,7 +44,6 @@ Envío de alertas automáticas contextualizadas con la dirección afectada en tr * **Material Design 3:** Línea gráfica moderna utilizando una paleta de colores verde ecológica acorde a la temática de reciclaje. * **Menú Lateral Dinámico (Drawer):** Navegación adaptativa según el rol de la cuenta: * *Menú Usuario:* Agregar dirección, Info de desperdicios, Reportar problema. - * *Menú Trabajador:* Panel de reportes de usuarios y reportes internos de trabajadores. * **Soporte de Tema:** Compatibilidad total con el Modo Claro y Modo Oscuro nativo del sistema operativo. * **Identidad:** Header del Drawer personalizado con el nombre y correo electrónico del usuario activo. @@ -70,8 +65,13 @@ La aplicación está construida siguiendo las mejores prácticas de desarrollo m --- -## ⚙️ Instalación y Configuración Local +## Instalación y Configuración Local Para compilar este proyecto necesitarás **Android Studio (Ladybug 2024.2.1 o superior)**. 1. **Clona este repositorio:** +2. **Abrir Android Studio** +3. **Abrir la carpeta del proyecto** +4. **Conectar tu dispositivo android (Mediante opciones de desarrollador y depuracion USB) o descargar un emulador** +5. **Ejecutar (con boton de play en la parte superior)** +6. **Esperar a que se importe lo que requiera** \ No newline at end of file