Saltar al contenido principal

🛡️ Guardias — Seguridad y Control Remoto

La aplicación cuenta con múltiples capas de seguridad ("guardias") para garantizar su uso correcto y permitir la administración remota.


🔐 Autorización y Modo Kiosko

⚙️ Flujo de Autorización

1️⃣ Obtención del Identificador del Dispositivo
Al iniciar, MainActivity obtiene el ANDROID_ID del dispositivo.

2️⃣ Validación del Acceso
Se realiza una llamada al endpoint:
/ACCESS/ValidarMacAccess?mac={ANDROID_ID}

3️⃣ Verificación en el Servidor
El servidor valida si el ID existe en la tabla C_dispositivos_autorizados y si está activo.

4️⃣ Bloqueo en Caso de Acceso No Autorizado
Si no es válido, la aplicación muestra la pantalla de bloqueo (bloqueo_layout.xml) y no continúa.

5️⃣ Respuesta del Servidor
Si el acceso es válido, la respuesta incluye un booleano kiosko, basado en el campo bloqueo de la base de datos.


📲 Modo Kiosko (startLockTask())

  • Si el servidor indica kiosko = true, la app activa el modo de pantalla anclada.
    Esto bloquea el acceso a:
    • 🔒 Barra de notificaciones
    • 🔙 Botones de navegación (Home, Atrás, Recientes)
    • 🚫 Otras aplicaciones
info

Requisito:
Para que funcione correctamente, la aplicación debe estar configurada como "Device Owner" (propietario del dispositivo).
Este ajuste se realiza una sola vez durante la configuración inicial de la tablet mediante comandos ADB.


📊 Diagrama de Guardias

Flujo de Salidas de Ganado

💡 Este sistema garantiza que el dispositivo opere exclusivamente dentro del entorno controlado de la aplicación, evitando manipulaciones no autorizadas.