Pular para o conteúdo principal
As Notificações ao Vivo Android do OneSignal permitem que você envie atualizações em tempo real para uma única notificação, reduzindo desordem e melhorando o engajamento. Essas notificações permanecem persistentes e atualizam seu conteúdo dinamicamente—ideais para placares esportivos, progresso de download ou rastreamento de eventos. Para receber Notificações ao Vivo, usuários Android devem ter notificações push habilitadas.

Requisitos

  • Seu aplicativo deve usar a versão mais recente do SDK OneSignal.
  • Usuários Android devem ter permissões de notificação push habilitadas.

Notificações ao vivo vs. push padrão

Diferente das notificações push regulares, que enviam uma nova notificação cada vez, as Notificações ao Vivo usam uma única notificação atualizada ao longo do tempo. As atualizações são enviadas via API Create Message usando o mesmo collapse_id.

Configuração

1. Implementar uma Extensão de Serviço de Notificação

Crie uma classe NotificationServiceExtension que implementa INotificationServiceExtension. Esta classe intercepta notificações recebidas e pode modificá-las ou substituí-las.
NotificationServiceExtention.kt

2. Adicionar a extensão ao Android Manifest

3. Criar tipos de Notificação ao Vivo

Um Tipo de Notificação ao Vivo indica qual Notificação ao Vivo iniciar.

Definir chaves

As Notificações ao Vivo são referenciadas por uma key, que determina como as atualizações são roteadas.
NotificationServiceExtention.kt

Criar canais de notificação

Os canais definem como as notificações se comportam (som, vibração, aparência). Você deve criar canais para seus tipos de Notificação ao Vivo. Recomendamos:
  • Baixa Importância para notificações de progresso
  • Desabilitar badges
  • Manter som e vibração ao mínimo
Veja Categorias de Canal de Notificação Android para mais informações.

Projetar a Notificação ao Vivo

Ao projetar uma Notificação ao Vivo, você tem a flexibilidade de criar um design de notificação para cada tipo de atualização. Cada design que você criar deve ser atribuído a um tipo específico, permitindo apresentações variadas de uma Notificação ao Vivo.
NotificationServiceExtention.kt
Considerações de design:
  • Ícone pequeno e cor de destaque
  • Ícone grande
  • Imagem grande
  • Botões de ação
Veja Layout de notificação personalizada Android para opções de design avançadas.

4. Extrair o payload da Notificação ao Vivo

As Notificações ao Vivo usam o campo additional_data para passar conteúdo estruturado.
NotificationServiceExtention.kt

Schema da Notificação ao Vivo

Example Live Notification Payload

5. Tratar eventos de Notificação ao Vivo

Cada Notificação ao Vivo deve responder aos seguintes eventos:
NotificationServiceExtention.kt

Iniciar uma Notificação ao Vivo

Quando estiver pronto para iniciar uma Notificação ao Vivo:
  • Defina event_attributes para inicializar os dados estáticos para a Notificação ao Vivo. Esses dados não mudarão durante o tempo de vida da Notificação ao Vivo.
  • Defina dados event_updates para inicializar os dados dinâmicos para a Notificação ao Vivo. Estes são os dados que podem e irão mudar durante o tempo de vida da Notificação ao Vivo.
  • Um collapse_id para garantir que cada atualização substitua a anterior. Este ID deve ser único para a Notificação ao Vivo para garantir que atualizações subsequentes sejam refletidas na mesma notificação.
curl

Atualizar Notificação ao Vivo

Você pode atualizar a Notificação ao Vivo quantas vezes quiser, desde que seja iniciada primeiro.
  • Defina dados event_updates para inicializar os dados dinâmicos para a Notificação ao Vivo. Estes são os dados que podem e irão mudar durante o tempo de vida da Notificação ao Vivo e informam com o que atualizar o conteúdo da sua Notificação ao Vivo.
Exemplo de solicitação cURL
curl

Encerrar Notificação ao Vivo

Exemplo de solicitação cURL
curl

Você criou com sucesso uma Notificação ao Vivo!Documentos relacionados: