Pular para o conteúdo principal
Os modos de foco ajudam os usuários do iOS a controlar quando e como eles recebem notificações permitindo modos separados como Trabalho, Sono e Pessoal. Cada modo ajusta a visibilidade e o comportamento de entrega da notificação. Para suportar casos de uso importantes como alertas de emergência ou segurança de conta, a Apple introduziu Níveis de interrupção para controlar como e quando as notificações aparecem—mesmo quando os modos de foco estão ativos.

Níveis de interrupção

Os níveis de interrupção determinam a urgência e o comportamento de entrega das notificações. Existem quatro níveis:

Active (padrão)

Notificações de prioridade padrão. Estas incluem som, vibração e comportamento de despertar a tela. Elas não contornam os modos de foco.

Time Sensitive

Comporta-se como Active mas inclui um banner especial. Notificações Time Sensitive podem romper os modos de foco e entrega agendada. Use apenas quando atenção urgente do usuário for necessária.

Passive

Notificações de baixa prioridade. Sem som ou vibração. Elas não interrompem o usuário e não rompem os modos de foco.

Critical

Notificações de prioridade mais alta. Contornam todos os controles do dispositivo e modos de foco. Usadas para emergências como clima severo ou alertas de saúde. Requer aprovação prévia da Apple para habilitar. Veja Configuração de alertas críticos para mais detalhes.

Como definir o nível de interrupção no OneSignal

Ao enviar um push do painel do OneSignal, você encontrará Notification Interruption Level em Apple iOS Settings. O padrão é Active. Se estiver usando a Create notification API, use estes parâmetros:
  • ios_interruption_level: Defina como "active", "time-sensitive", "passive" ou "critical"
  • ios_relevance_score: Valor numérico opcional de 0 a 1 para indicar importância para ordenação de entrega.

Configuração de alertas críticos

Alertas críticos:
  • Ignoram o Não Perturbe e o interruptor de silencioso.
  • São reservados para casos de alta prioridade (por exemplo, saúde, segurança).
  • Requerem aprovação explícita da Apple, e os usuários devem fazer opt-in separadamente mesmo se tiverem habilitado notificações push normais.

Solicitar autorização da Apple para alertas críticos

  1. Revise a documentação da Apple e clique em fill out the request form.
  2. Escolha a solicitação de autorização de alertas críticos.
  3. Preencha o formulário e envie a solicitação.
  4. Aguarde a revisão e aprovação da Apple.

Adicionar a autorização de alertas críticos ao seu aplicativo

Assim que a Apple aprovar sua solicitação:
  1. Abra seu arquivo .entitlements no Xcode (ou crie um se você não tiver).
  2. Adicione:
<key>com.apple.developer.usernotifications.critical-alerts</key>
<true/>
  1. Certifique-se de que seu perfil de provisionamento inclui esta autorização:
  • Regenere seu perfil de provisionamento no portal Apple Developer se necessário.
  • Baixe e adicione-o novamente ao Xcode.

Solicitar permissão de alerta crítico no código do seu aplicativo

A permissão de alerta crítico é separada da permissão push padrão e deve ser solicitada assim (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)")
    }
}
Você deve solicitar isso após obter a permissão push padrão, idealmente no seu fluxo de onboarding.

Testar alertas críticos

  1. Compile e execute seu aplicativo.
  2. Envie um push de teste seguindo os passos acima em Como definir o nível de interrupção no OneSignal.

Documentos relacionados