Visión general
Las notificaciones push se gestionan mediante expo-notifications (v0.31.4), con un servicio singleton que encapsula toda la funcionalidad.Servicio de notificaciones
El servicio singleton se encuentra ensrc/modules/profile/services/notificationsService.ts y expone los siguientes métodos:
- Permisos
- Push token
- Badge
Configuración iOS
Habilitado
- Alertas - Badges - Sonidos - Display en CarPlay
Deshabilitado
- Critical alerts - Provisional permissions
Comportamiento de notificación mostrada
Cuando la app está en primer plano y llega una notificación, se aplica la siguiente configuración:La configuración de badge deshabilitado en notificaciones individuales significa que el badge se
gestiona manualmente a través del servicio, no automáticamente por cada notificación recibida.
Deep linking desde notificaciones
Las notificaciones push pueden contener un campodeep_link en sus datos. Cuando el usuario toca la notificación, el enlace se procesa a través del linkingService para navegar a la pantalla correspondiente.
Plugin en app.config.ts
La configuración del plugin deexpo-notifications en app.config.ts:
Integración con linkingService
El flujo completo de una notificación push con deep link es:- El dispositivo recibe la notificación push
- El usuario toca la notificación
- Se extraen los datos de
deep_linkdel payload - El
linkingServicerecibe la ruta - Si el usuario está autenticado, se navega directamente
- Si no está autenticado, el deep link se preserva y se ejecuta después del login