
Exemplo de uma notificação Web Push do Android Chrome com ícone de badge pequeno, ícone grande e imagem.
Ícones de notificação Android
O Android (incluindo dispositivos Amazon e Huawei) suporta ícones de notificação pequenos e grandes. No Android 8.0+ (API 26+), as categorias de notificação e a interface do fabricante também afetam a aparência da notificação. O Android também suporta Notificações de Conversa que podem mostrar a imagem de perfil de uma pessoa no lugar do seu ícone.
Ícones de notificação pequenos
O ícone de notificação pequeno é obrigatório. Ele aparece na barra de status como uma silhueta monocromática. Se você não fornecer um ícone pequeno personalizado, o OneSignal usa um ícone de sino padrão. O posicionamento do ícone na notificação muda no Android 17 (API 37). Consulte Ícone de inicialização na notificação. O Android renderiza ícones de notificação pequenos usando o canal alfa do ícone, não seus dados de cor. A partir do Android 12 (API 31), o sistema tinge essa silhueta com a cor de destaque de notificação que você define. Se você não definir uma cor, ele usa a cor do tema do sistema. Consulte Design de notificações do Android. Requisitos:- Use um ícone de silhueta monocromática em um fundo transparente
- Projete o ícone de forma que a forma seja definida por transparência, não por cor
- Evite gradientes, sombras ou arte multicolorida
- Mantenha o design simples e reconhecível em tamanhos muito pequenos
Ícone de inicialização na notificação (Android 17)
A partir do Android 17 (API 37), o Android mostra o ícone de inicialização do seu aplicativo na notificação em vez do ícone pequeno. O ícone pequeno ainda aparece na barra de status. Esse é um comportamento do sistema Android que se aplica a todas as notificações, e a aparência exata pode variar de acordo com o fabricante do dispositivo. Para mostrar o ícone pequeno na notificação em vez disso, defina o extraEXTRA_PREFER_SMALL_ICON do Android. O SDK do OneSignal não define esse extra por padrão. Adicione-o na sua extensão de serviço de notificação. Anote a classe com @Keep e registre-a no manifesto conforme mostrado naquela página.
compileSdk. O Android 16 (API 36) e versões anteriores ignoram o extra, portanto é seguro defini-lo incondicionalmente.
Cor de destaque do ícone pequeno
Você pode definir a cor de destaque da notificação que o Android 12 (API 31) e versões mais recentes usam para tingir o ícone pequeno. Ela corresponde aoNotification.color (setColor) do Android. Não é o mesmo que colorir o fundo da notificação (setColorized), que o Android reserva para tarefas contínuas de alta prioridade.
A cor de destaque é uma propriedade por notificação, não uma propriedade de canal. As categorias de notificação Android controlam som, importância, vibração, cor do LED e badges. As categorias não têm configuração de cor de destaque, e sua cor de destaque se aplica independentemente de em qual categoria a notificação é exibida.

- Por mensagem: o parâmetro
android_accent_color(Google Android) ouhuawei_accent_color(Huawei) na API Criar mensagem, ou o campo Accent color em Messages > Push > New Push > Platform Settings > Google Android Options. - Padrão do aplicativo via recursos: o recurso de string
onesignal_notification_accent_color. - Padrão do aplicativo via manifesto: a entrada meta-data
com.onesignal.NotificationAccentColor.DEFAULTnoAndroidManifest.xml.
# (por exemplo, FF00FF00). Você pode pré-visualizar cores no Android Asset Studio.
Para definir uma cor padrão com recursos, adicione a seguinte linha ao seu arquivo res/values/strings.xml. Para uma cor diferente no modo escuro, adicione a mesma chave ao res/values-night/strings.xml.
<application>:
notification.setExtender com builder.setColor(). O extender é executado depois que o SDK aplica os valores acima, portanto ele substitui todos eles.
Ícones de notificação grandes
O ícone grande é opcional. Ele aparece no lado direito da notificação. A orientação de design do Android é usá-lo apenas quando a imagem reforça o conteúdo da notificação, como a foto de um remetente, o logotipo de uma fonte de terceiros ou um símbolo significativo. Não use o ícone grande como um segundo ícone de aplicativo ou para branding. Consulte The large icon.- Tamanho recomendado: 256×256 pixels
- Formato: PNG ou JPG
- Cor é permitida. Somente alfa não é obrigatório.
Como adicionar ícones padrão do Android
Configure ícones padrão para cada aplicativo baseado em Android (Google Play, Amazon, Huawei). Conclua primeiro a Configuração do SDK Android (ou sua configuração multiplataforma). Adicione os arquivos aos diretórios de recursos do seu projeto (ou a uma configuração de plugin para o Expo), recompile e lance. Arquivos ausentes ou nomeados incorretamente são a causa mais comum de renderização quebrada. Os ícones padrão são incluídos no binário do aplicativo. Eles não são enviados para o dashboard do OneSignal. Depois de lançar, aguarde até que a maioria dos usuários atualize antes de enviar notificações que dependam de um novo nome de ícone.Gerar o ícone de notificação pequeno
ic_stat_onesignal_defaultCriar tamanhos de ícone pequeno obrigatórios
Gerar o ícone de notificação grande (opcional)
ic_onesignal_large_icon_default.pngColocar ícones nos caminhos corretos do projeto
drawable-xxxhdpi/ ao lado do ícone pequeno XXXHDPI. Os dois arquivos compartilham uma pasta e usam nomes diferentes.- Android Native
- Unity
- React Native / Expo
- Flutter
- Cordova
- Capacitor
- .NET MAUI
ic_stat_onesignal_default):res/drawable-mdpi/(24×24)res/drawable-hdpi/(36×36)res/drawable-xhdpi/(48×48)res/drawable-xxhdpi/(72×72)res/drawable-xxxhdpi/(96×96)
ic_onesignal_large_icon_default.png, 256×256):res/drawable-xxxhdpi/

Projeto Android Native com arquivos de ícone nas pastas drawable
Ícones de notificação iOS
As notificações iOS sempre usam o ícone do seu aplicativo. O sistema exibe uma versão grande desse ícone na borda inicial de cada notificação e o dimensiona a partir do ativo de ícone do seu aplicativo. Você não pode alterá-lo por mensagem. Para alterá-lo, atualize o ícone do aplicativo e lance uma nova versão do aplicativo. Consulte Human Interface Guidelines: Notifications.alert, badge e sound. Ele não tem campo para um ícone de notificação personalizado. A Apple ignora chaves personalizadas dentro do dicionário aps. Isso se aplica a notificações push padrão e Alertas Críticos. A interface de Live Activity pode mostrar suas próprias imagens por meio do ActivityKit. Isso não é um substituto para o ícone de notificação.Notificações de Comunicação
No iOS 15 e mais recente, a Apple suporta Notificações de Comunicação para aplicativos de mensagens e chamadas. Depois de você doar umINSendMessageIntent ou INStartCallIntent, o sistema pode mostrar o avatar (INImage) do remetente ou de quem chama no lugar do ícone grande do aplicativo. O ícone do aplicativo ainda aparece como um pequeno badge sobre esse avatar.
Isso requer a capability Communication Notifications, intents do SiriKit e uma Notification Service Extension para atualizar o conteúdo da notificação. Não está disponível para notificações de uso geral.
Ícones de notificação web
As notificações push web exibem um ícone fornecido no momento do envio ou definido como padrão nas configurações do seu site. Se nenhum ícone for fornecido, um ícone de sino padrão é usado.- Formatos suportados: PNG, JPG, GIF (não animado)
- O ícone deve ser quadrado. O tamanho recomendado é de
256×256pixels. O web.dev cita 64dp no Android, então192×192ou maior é o mínimo usual.256×256continua sendo o tamanho mais consistente entre Chrome, Firefox, Edge e Safari. - Navegadores e sistemas operacionais recortam e dimensionam o ícone de forma diferente. Chrome e Firefox usam a interface de notificação da plataforma onde ela existe.
Ícone de badge de web push do Android
No Android, o web push do Chrome pode mostrar um ícone de badge menor na barra de status quando não há espaço suficiente para a notificação completa. O OneSignal o envia comchrome_web_badge, que corresponde à opção badge da Notifications API. O Chrome no Android usa esse badge. Se você não definir um, o Chrome usa o ícone do navegador. Outros navegadores normalmente mostram o ícone do navegador. Consulte Notification: badge.
Isso não é um badge de ícone de aplicativo (ponto ou número). Para esses, consulte Badges.
Trate o badge como um ícone monocromático. O MDN afirma que o Android mascara automaticamente a imagem. Use uma silhueta em PNG quadrado em um fundo transparente (mesmas regras do ícone pequeno do Android). Evite texto, detalhes finos e arte em cores completas.
O MDN recomenda cerca de 96×96 pixels para que a imagem se mantenha bem em 4x. 72×72 é o mínimo usual (24dp em 3x). Imagens maiores são reduzidas.

Exemplo de como o ícone de badge é exibido na barra de status do Android.
Enviar notificações com ícones não padrão
Ao enviar push do dashboard do OneSignal ou da API REST, você pode substituir os ícones padrão para Android, Amazon, Huawei e Web Push. Você não pode substituir o ícone para notificações iOS.Parâmetros da API REST
Android, Amazon e Huawei:adm_small_icon. Para Huawei use huawei_small_icon.Exemplo: "small_icon": "my_custom_icon"adm_large_icon. Para Huawei use huawei_large_icon.Exemplo: "large_icon": "my_custom_icon"firefox_icon.Exemplo: "chrome_web_icon": "https://example.com/my_custom_icon.png""chrome_web_badge": "https://example.com/badge.png"Dashboard
Em Messages > Push > New Push ou Templates, abra as opções específicas da plataforma. Para Android, Amazon e Huawei, se o arquivo existir no mesmo caminho de projeto que o ícone padrão, defina os nomes dos ícones sem a extensão do arquivo. Para ícones de notificação grandes, você também pode fornecer uma URL direta.
Dashboard do OneSignal, onde substituir os ícones padrão.
FAQ
Por que o meu ícone pequeno do Android aparece como um quadrado branco ou cinza?
A imagem não possui transparência adequada. O Android renderiza ícones de notificação pequenos usando apenas o canal alfa. Pixels totalmente opacos com um fundo sólido aparecem como um quadrado preenchido. Regenere o ícone como uma silhueta monocromática em um fundo transparente usando o Android Asset Studio.Por que o ícone de sino do OneSignal aparece em vez do meu ícone personalizado?
Uma ou mais variantes de densidade obrigatórias do ícone pequeno estão faltando, foram colocadas no diretório drawable errado ou estão nomeadas incorretamente. Inclua todos os cinco tamanhos (MDPI a XXXHDPI) com o nome de arquivo exatoic_stat_onesignal_default. Consulte Como adicionar ícones padrão do Android para os caminhos corretos.
Por que as notificações mostram o ícone do meu aplicativo em vez do meu ícone pequeno?
A partir do Android 17 (API 37), o Android exibe por padrão o ícone de inicialização do aplicativo na notificação. O ícone pequeno ainda aparece na barra de status. Para mostrar o ícone pequeno na notificação, defina o extraEXTRA_PREFER_SMALL_ICON em uma extensão de serviço de notificação. Consulte Ícone de inicialização na notificação.
Posso alterar o ícone de notificação do iOS por mensagem?
Não. O iOS sempre usa o ícone do seu aplicativo para notificações push. O payload de APNs não tem campo de ícone. Alterar o ícone requer atualizar o ativo de ícone do seu aplicativo e lançar uma nova versão do aplicativo. Aplicativos de mensagens e chamadas podem mostrar um avatar do remetente apenas adotando Notificações de Comunicação.Qual tamanho deve ter o meu ícone de web push?
Use uma imagem PNG, JPG ou GIF não animado quadrada de256×256 pixels. Diferentes navegadores e sistemas operacionais podem recortar ou dimensionar o ícone, mas 256×256 é o tamanho mais consistente entre Chrome, Firefox, Edge e Safari.
Posso usar uma URL para o ícone pequeno do Android?
Não. O ícone pequeno do Android deve ser um arquivo de recurso local incluído no seu aplicativo. Apenas o ícone grande suporta URLs remotas.Como adiciono ícones de notificação no Expo?
Use oonesignal-expo-plugin com um PNG de ícone pequeno de 96×96 e um PNG de ícone grande de 256×256 no app.json ou app.config.js. O plugin gera as variantes de densidade no momento do build. Consulte a aba Expo para a configuração.
Devo fazer upload dos ícones padrão para o dashboard do OneSignal?
Não. Os ícones de notificação padrão são incluídos dentro do binário do seu aplicativo, não enviados para o OneSignal. Você os adiciona aos diretórios de recursos do seu projeto (ou à configuração de plugin para o Expo), e o SDK do OneSignal os utiliza automaticamente. O dashboard do OneSignal permite apenas substituir ícones por mensagem para Android e Web Push.Relacionado
Imagens e rich media
Configuração do SDK Android
Configuração do SDK React Native / Expo
smallIcons e largeIcons no plugin Expo do OneSignal.