Inicio de turno en el móvil
Cuando un técnico abre la app móvil, la pestaña de inicio muestra un único botón Iniciar turno. Lo que pasa al tocarlo depende de si ya ha dado antes su consentimiento para el seguimiento por GPS.
La primera vez — el aviso de consentimiento
- Toca Iniciar turno.
- Aparece un aviso con el texto de la política de seguimiento por GPS de la organización. Explica el intervalo, el periodo de retención, quién ve los datos y cómo revocarlo.
- Dos botones: Ahora no (cierra el aviso, no se inicia turno) e Acepto, iniciar turno (envía el consentimiento y luego inicia el turno de inmediato).
Cada turno posterior
Toca Iniciar turno. La app:
- Comprueba la configuración de seguimiento por GPS de la organización (
enabled+intervalSeconds). - Confirma que hay consentimiento registrado.
- Pide al sistema el permiso de ubicación en primer plano + segundo plano (una vez por dispositivo).
- Registra el turno en el backend.
- Inicia la tarea de ubicación en segundo plano al intervalo configurado por la organización.
El indicador de estado pasa a Turno activo con un contador de duración en vivo. La pista dice «Tu ubicación se comparte cada ~{N} s» con el intervalo real.
Qué muestra el sistema
- iOS: una barra azul en la parte superior de la pantalla («La app está usando tu ubicación»).
- Android: una notificación persistente de servicio en primer plano («Roldesk — Turno activo»).
Ambas son intencionadas: la normativa de privacidad espera un indicador visual claro mientras el seguimiento está activo.
Fin de turno
Toca Finalizar turno. La app detiene la tarea en segundo plano, envía la hora de fin del turno y la barra del sistema desaparece.
¿Y si la app se cierra / fuerzo el cierre?
El turno activo se guarda en AsyncStorage. En el siguiente arranque, la app lo recupera y reanuda: la tarea de ubicación se vuelve a registrar, el contador de duración continúa desde la hora de inicio original y la barra reaparece. Forzar el cierre no pierde el turno.
¿Y si no hay señal?
Los pings se almacenan localmente y se suben por lotes cuando vuelve la conectividad. El backoffice ve un hueco durante la ventana sin conexión, y luego la puesta al día llega en una ráfaga.
Problemas frecuentes
- «Error de solicitud de red» en todas las pantallas: normalmente una URL de desarrollo obsoleta. Desarrolladores: ejecutad
npm run set-apien apps/mobile para refrescarla. - El aviso de consentimiento no se cierra: aceptar la política es una acción de un solo sentido. Para revocar, finaliza el turno, ve al perfil y toca Revocar consentimiento de GPS.
- El sistema denegó el permiso en segundo plano: vuelve a concederlo desde Ajustes del dispositivo → Roldesk → Ubicación → Siempre.