OSNotification representa o payload de notificação push nos SDKs do OneSignal. Use-a para acessar o título da notificação, corpo, dados personalizados e propriedades específicas da plataforma ao lidar com notificações no seu aplicativo.
Os payloads de notificação push são limitados a
4096 bytes. Para evitar truncamento, mantenha payloads abaixo de 3500 bytes. O campo additionalData é limitado a 2048 bytes.Acessando OSNotification no seu aplicativo
Todos os SDKs do OneSignal fornecem um listener de evento de notificação que retorna um objeto OSNotification:
- Android: Use o notification lifecycle listener
- iOS: Use o notification lifecycle listener ou um
UNNotificationServiceExtension
Campos do Android
Campos do iOS
OSNotificationAction (eventos de clique)
Descreve a interação do usuário com a notificação.
Estrutura de payload personalizado do OneSignal
Todas as notificações do OneSignal incluem um objeto especial"custom" no payload:
Esta chave é necessária para que os SDKs do OneSignal processem a notificação. Se estiver ausente, as notificações não acionarão eventos de clique ou análises. Se você enviar pushes de outro serviço para dispositivos que também usam o OneSignal, filtre por esta chave para evitar processamento duplicado. Consulte Push payload handling para mais informações.
Mover additionalData para a raiz do APNS
Para aplicativos iOS, você pode colocar camposadditionalData na raiz do payload do APNS em vez de dentro do dicionário custom. Isso simplifica o acesso em manipuladores de notificação personalizados.
1. Habilite via API
Use a Update an app API e defina:
data
Os campos data aparecerão na raiz do payload do APNS:
promo_code diretamente sem verificar o dicionário custom.
Notificações restauradas (Android)
O SDK Android restaura notificações após uma reinicialização do dispositivo ou do aplicativo.Formatos de push token
- iOS Push (APNS): 64 caracteres, apenas hexadecimal (0-9, a-f).
deviceToken.map {String(format: "%02x", $0)}.joined() - Android Push (FCM): Normalmente 163 caracteres, alfanumérico, pode conter hifens, dois-pontos e sublinhados.
FAQ
Qual é o tamanho máximo do payload?
Os payloads de notificação push são limitados a 4096 bytes no total. O campoadditionalData é limitado a 2048 bytes. Para evitar truncamento, mantenha seu payload total abaixo de 3500 bytes.
Como identifico uma notificação do OneSignal no payload bruto?
Todas as notificações do OneSignal incluem um objeto"custom" com uma chave "i" contendo o ID da notificação. Verifique essa chave para distinguir notificações do OneSignal daquelas enviadas por outros provedores.
Posso acessar additionalData na raiz do payload do APNS?
Sim. Habiliteadditional_data_is_root_payload via Update an app API para colocar campos additionalData na raiz do APNS em vez de dentro do dicionário custom. Consulte Mover additionalData para a raiz do APNS para mais detalhes.
Categorias de notificação do Android
Configure canais de notificação para dispositivos Android 8.0+.
Mobile Service Extensions
Adicione mídia rica, badges e rastreamento de entrega confirmada.
Referência do SDK móvel
Referência completa dos métodos e listeners do SDK móvel do OneSignal.