Saltar al contenido principal
Los modos de concentración ayudan a los usuarios de iOS a controlar cuándo y cómo reciben notificaciones al permitir modos separados como Trabajo, Sueño y Personal. Cada modo ajusta la visibilidad de las notificaciones y el comportamiento de entrega. Para admitir casos de uso importantes como alertas de emergencia o seguridad de cuenta, Apple introdujo los Niveles de interrupción para controlar cómo y cuándo aparecen las notificaciones, incluso cuando los modos de concentración están activos.

Niveles de interrupción

Los niveles de interrupción determinan la urgencia y el comportamiento de entrega de las notificaciones. Hay cuatro niveles:

Activo (predeterminado)

Notificaciones de prioridad estándar. Estas incluyen sonido, vibración y comportamiento de activación de pantalla. No omiten los modos de concentración.

Sensible al tiempo

Se comporta como Activo pero incluye un banner especial. Las notificaciones sensibles al tiempo pueden atravesar los modos de concentración y la entrega programada. Úsalo solo cuando se requiera atención urgente del usuario.

Pasivo

Notificaciones de baja prioridad. Sin sonido ni vibración. No interrumpen al usuario y no atraviesan los modos de concentración.

Crítico

Notificaciones de máxima prioridad. Omiten todos los controles del dispositivo y los modos de concentración. Se utilizan para emergencias como clima severo o alertas de salud. Requiere aprobación previa de Apple para habilitarse. Consulta Configuración de alertas críticas para más detalles.

Ejemplo. Imagen que muestra notificaciones sensibles al tiempo.


Cómo establecer el nivel de interrupción en OneSignal

Al enviar una notificación push desde el panel de OneSignal, encontrarás Nivel de interrupción de notificación bajo Configuración de Apple iOS. El predeterminado es Activo. Si usas la API de crear notificación, utiliza estos parámetros:
  • ios_interruption_level: Establécelo en "active", "time-sensitive", "passive" o "critical"
  • ios_relevance_score: Valor numérico opcional de 0 a 1 para indicar la importancia para el orden de entrega.

Configuración de alertas críticas

Alertas críticas:
  • Ignoran No molestar y el interruptor de silencio.
  • Están reservadas para casos de alta prioridad (por ejemplo, salud, seguridad).
  • Requieren aprobación explícita de Apple, y los usuarios deben optar por ellas por separado incluso si han habilitado las notificaciones push normales.

Solicitar autorización de Apple para alertas críticas

  1. Revisa la documentación de Apple y haz clic en completar el formulario de solicitud.
  2. Elige la solicitud de autorización de alertas críticas.
  3. Completa el formulario y envía la solicitud.
  4. Espera la revisión y aprobación de Apple.

Agregar la autorización de alertas críticas a tu aplicación

Una vez que Apple apruebe tu solicitud:
  1. Abre tu archivo .entitlements en Xcode (o créalo si no lo tienes).
  2. Agrega:
<key>com.apple.developer.usernotifications.critical-alerts</key>
<true/>
  1. Asegúrate de que tu perfil de aprovisionamiento incluya esta autorización:
  • Regenera tu perfil de aprovisionamiento en el portal de Apple Developer si es necesario.
  • Descárgalo y vuelve a agregarlo a Xcode.

Solicitar permiso de alerta crítica en el código de tu aplicación

El permiso de alerta crítica es independiente del permiso de push estándar y debe solicitarse de esta manera (usando Swift):
import UserNotifications

UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .sound, .badge, .criticalAlert]) { granted, error in
    if let error = error {
        print("Authorization error: \(error)")
    } else {
        print("Critical alert permission granted: \(granted)")
    }
}
Debes solicitar esto después de obtener el permiso de push estándar, idealmente en tu flujo de incorporación.

Probar alertas críticas

  1. Compila y ejecuta tu aplicación.
  2. Envía una notificación push de prueba siguiendo los pasos anteriores en Cómo establecer el nivel de interrupción en OneSignal.

Documentos relacionados