Notificações

As notificações fornecem informações breves, oportunas e relevantes relacionadas à sua app quando ele não está em uso.

O SO Android controla muitos aspectos das notificações, mas você controla e outros aspectos. Siga estas etapas ao implementar notificações:

  1. Entenda a anatomia de uma notificação.
  2. Escolha o tipo de notificação para seu caso de uso.
  3. Definir a categoria mais adequada ao tipo de notificação que você escolher.

Aprendizados

  • Considere o objetivo da notificação: por que você está alertando os usuários?
  • Determine o padrão de permissão das notificações, considere a importância as notificações são para seu app e onde perguntar na jornada do usuário.
  • Escolha seu modelo de notificação.
  • Criar conteúdo de notificação:
    • O texto do cabeçalho precisa resumir a notificação de maneira sucinta.
    • O texto do conteúdo deve exibir uma prévia da notificação.
    • Conteúdo da imagem, se aplicável ao conteúdo do app.
    • Keyart e metadados de mídia para o modelo de mídia.
  • Deixe claro o que o usuário pode fazer com uma notificação fornecendo ações baseadas no conteúdo, seja com botões de texto, digitação ou mídia controles de segurança.
  • Inclua o ícone e defina a cor do plano de fundo do ícone do app.
  • Defina canais e categorias para suas notificações. Isso permite que o sistema e seu usuário para personalizar quais notificações recebem e fornecem por comportamento prioritário.
  • Caso seu app possa entregar várias notificações de uma vez, agrupe as notificações.
  • Confira o Kit de interface do Android no Figma para notificações de modelos.

Anatomia de uma notificação

As notificações são projetadas para facilitar a verificação e o uso da maior quantidade elementos importantes. Esses elementos são:

  • Conteúdo principal: é o elemento mais proeminente de um notificação. As informações secundárias, como um carimbo de data/hora, são menores consolidadas acima do conteúdo principal.
  • Pessoas: se a notificação envolver uma pessoa, o avatar se destacará da o restante do conteúdo.
  • Ações: os usuários podem expandir as notificações tocando em um ícone indicador. As ações são exibidas com rótulos de texto em uma cor de fundo separada e o local.
.
Figura 1: notificação recolhida

Cabeçalho e conteúdo da notificação

Quando recolhida, uma notificação mostra o ícone do aplicativo, o texto do cabeçalho, o carimbo de data/hora, indicador de expansão e texto do conteúdo. Opcionalmente, ele também pode mostrar um ícone grande.

Figura 2:área do cabeçalho da notificação

1 Ícone do app: o ícone do app é um representação bidimensional da identidade do seu app. O item é exibido monocromático na barra de status. Caso seu app envie uma grande variedade de notificações, considere substituindo o ícone do app por um símbolo para diferenciar os diferentes tipos de notificações. Consulte Aplicar a cor do ícone para: detalhes.

2 Texto do cabeçalho: um breve título para o notificação ou fonte, como o nome da conta para os usuários. O conteúdo é o mais elemento proeminente de uma notificação.

3 Carimbo de data/hora:indica quando uma notificação foi enviada, como o horário de uma chamada perdida.

4 Indicador de expansão: indica se o a notificação está em estado recolhido ou expandido.

5 Texto do conteúdo: informações de apoio.

6 Ícone grande (opcional): uma imagem pode ser adicionados para reforçar a notificação de uma forma significativa, como uma mensagem; que inclua um avatar do remetente.

Aplicar a cor do ícone

No Android 12 (nível 31 da API) e versões mais recentes, o sistema deriva a cor do ícone cor de notificação definida no app. Se o app não definir a cor, usa a cor de tema do sistema. Antes, a cor era cinza.

Figura 3:cor resultante do ícone do app estilizado

Para a maioria dos estilos, o sistema aplica essa cor somente se a notificação for para uma notificação de serviço em primeiro plano. No entanto, essa exigência não é para MediaStyle e DecoratedMediaCustomViewStyle notificações que tenham uma sessão de mídia anexada.

O snippet a seguir mostra como aplicar a cor do ícone.

val notification = Notification.Builder()
    .setColor(Color.GREEN)
    .setColorized(true)
    .setSmallIcon(R.drawable.app_icon)
    .setStyle(Notification.DecoratedCustomViewStyle())
    .build()

Ações da notificação

Figura 4:área de ações de notificação

1 Ações do botão de texto

2 Botões de ação preenchidos

3 Respostas sugeridas

4 Campo de texto da resposta

A partir do Android 7.0 (API de nível 24), o sistema mostra ações sem ícones para acomodar mais texto. Para acomodar dispositivos e dispositivos Android Wear com o Android 6.0 (nível 23 da API) e versões anteriores, seu app ainda precisa fornecer uma ícone.

Visualizações expandidas

Você pode usar uma exibição expandida para exibir mais informações ao usuário sem e saia da notificação.

Quando expandida, uma notificação pode fornecer até três das seguintes opções tipos de ações:

  • Respostas sugeridas
  • Ações enfatizadas (botões em forma de pílula)
  • Ações de texto padrão
Incluir ações de texto que dupliquem o comportamento de tocar no corpo da notificação.
Dê ao usuário a chance de interagir com a notificação. O app Relógio do Google mostra um timer em execução, mas permite que o usuário pause ou adicione um minuto diretamente pela notificação.

Ativar a digitação em notificações

Você permite que o usuário digite diretamente em uma notificação incluindo uma resposta à ação. Esse recurso foi criado para digitar uma pequena quantidade de texto, como responder a uma uma mensagem de texto ou uma breve anotação.

Para digitar em um formato mais longo, direcione os usuários até seu aplicativo para fornecer mais espaço para visualizar e editar textos.

Para apps de mensagens, recomendamos manter a notificação presente após o usuário enviou a resposta e está aguardando até que a conversa seja pausada antes de descartá-la automaticamente.

Figura 5:um usuário respondendo diretamente no Android Mensagens sem sair da notificação depois de tocar em "Responder"

Escolha o tipo de notificação de acordo com seu caso de uso

O Google usa os seguintes modelos de notificação nos apps Android. Esses os modelos podem ser personalizados até certo ponto para seu aplicativo.

Confira o kit de interface do Android no Figma para ver modelos de notificação.

Modelo padrão

O modelo padrão é adequado para a maioria das notificações, permitindo texto, um ícone grande (quando aplicável) e ações.

Figura 6:modelo de notificação padrão

Modelo de texto grande

O modelo de texto grande é ideal para exibir blocos de texto mais longo. Ela permite que o usuário visualiza mais texto depois de expandir a notificação.

Figura 7. Modelo de texto grande, com a opção de ícone grande

Modelo de visão geral

O modelo de visão geral foi projetado para notificações que contêm uma imagem. Quando for recolhida, a notificação mostrará um grande ícone da miniatura da imagem. Quando aberta, a notificação mostra uma visualização muito maior.

Figura 8:modelo de visão geral

Modelo de progresso

O modelo de progresso foi projetado para atividades iniciadas pelo usuário que levam tempo a serem concluídas. Quando expandida, uma notificação que usa esse modelo mostra uma e também inclui uma barra de progresso, que permite ao usuário encerrar nesta atividade. Atividades não canceláveis não justificam notificações.

Figura 9:modelo de progresso

Modelo de mídia

O modelo de mídia foi desenvolvido para permitir que o usuário controle a mídia atualmente a partir de um aplicativo.

  • Quando recolhida, a notificação pode exibir até três ações. A grande pode mostrar uma imagem relacionada, como a capa de um álbum.
  • Quando expandida, a notificação exibe até cinco ações com uma imagem, ou seis ações sem imagem. O plano de fundo e outros elementos do a notificação herda automaticamente as cores da imagem.
.
Figura 10: modelo de mídia

Modelo de mensagens

O modelo MessagingStyle foi projetado para a comunicação em tempo real. Quando aberta, uma notificação que usa esse modelo permite que o usuário responda às mensagens de dentro da notificação.

Figura 11:modelo de mensagens

Modelo de chamada

Use o modelo CallStyle para gerar notificações em formato grande que inclua uma imagem grande anexada e indique uma chamada recebida ou efetuada.

Figura 12:modelo de chamada

Permissões de notificação

Tão relevantes e oportunas quanto as notificações podem ser, a maioria delas é não isentos, ou seja, o usuário precisa consentir em receber notificações de seu app.

Há uma exceção: no Android 13 (nível 33 da API), as mídias sessões e apps que gerenciam chamadas telefônicas estão isentos de solicitar o consentimento do usuário. Os apps pré-existentes também poderão ser qualificados se o usuário já está com as notificações ativadas. Confira mais detalhes em Isenções.

Recomendamos que o app ofereça opções de notificação nas configurações para: permitir que os usuários atualizem as preferências de notificação.

Pedir que o usuário ative as notificações não isentas

No caso de notificações não isentas, solicite que o usuário indique se quer para ativar o recebimento de notificações. Usuários que optam explicitamente por receber é provável que as notificações a considerem mais úteis e menos invasivas.

Figura 13:como solicitar o consentimento de um usuário para uma notificação não isenta

Aguarde até que o prompt da caixa de diálogo de notificação seja mostrado:

  • Descreva os benefícios que as notificações oferecem e o resultado de não conceder permissões para notificações.
  • Fornecem uma interface de usuário contextual, relacionando a notificação a seus recursos ou ao que ela afeta. Essa interface pode assumir qualquer forma para se integrar melhor ao seu aplicativo: por de exemplo de cartão em uma tarifa, página inferior ou tela de integração. Qualquer um destes deve ser dispensável.
  • Não mostrar a caixa de diálogo de permissão de notificação se o usuário tiver dispensado a de ML pela IU.

No Android 13 e versões mais recentes, os usuários podem receber novas solicitações de permissões de notificações.

Notificações obrigatórias

Os serviços em primeiro plano realizam operações que são perceptíveis pelo usuário, mas não interagem diretamente com o app. Esses serviços mostram uma barra de status para informar aos usuários que o aplicativo está realizando uma tarefa na e está consumindo recursos do sistema.

Figura 14:exemplo de notificação de serviço em primeiro plano do app fitness

Como esses processos consomem bateria e possivelmente dados, seu app precisa disponibilizar cientes delas, mostrando uma notificação não dispensável. O usuário não pode dispensar a notificação, portanto você deve fornecer uma ação para que o usuário interrompa o serviço.

O exemplo a seguir mostra uma notificação de um app fitness. O usuário tem iniciou uma sessão de treino ativa, que instancia um serviço em primeiro plano monitorar a sessão de treino. O app mostra a notificação para indicar que monitorar caminhadas, com a opção de ver o treino.

Quando não usar uma notificação

Não use notificações para nenhum dos seguintes casos de uso:

  • Para promoção cruzada ou publicidade de outro produto (isso é estritamente proibida pela Play Store)
  • Se o usuário nunca tiver aberto o app
  • Como o principal método de comunicação com os usuários
  • Incentivar o usuário a retornar a um aplicativo, mas não fornecer valor direto (por exemplo, "Não vejo você há um tempo!")
  • Para solicitações para avaliar seu app
  • Para operações que não exigem o envolvimento do usuário, como a sincronização informações
  • Para anunciar estados de erro, o app pode se recuperar sem a interação do usuário
  • Para mensagens de feriados ou aniversários
Enviar saudações de feriados ou aniversários na forma de notificações.
Interromper o usuário no meio de uma tarefa com o único propósito de perguntar se está fazendo um bom trabalho.

Comportamento

Esteja ciente dos seguintes comportamentos de notificação e como lidar com eles no certos contextos.

Notificação recebida

Quando uma notificação chega, o Android a adiciona à gaveta de notificações. Dependendo dos parâmetros definidos e do estado atual do dispositivo, pode realizar qualquer uma das seguintes ações:

  • Emita um som ou vibre o smartphone.
  • exibir um ícone na barra de status; normalmente é o ícone do seu app, mas Se você tiver vários tipos de notificação, use um símbolo que capture a a finalidade da notificação.
  • Exibir como uma notificação de informações básicas, surgindo na tela atual para captar a atenção do usuário.

Como sempre, o usuário pode optar por alterar os comportamentos de notificações que você definiu.

Figura 15:chegada de notificações

1 Indicador de notificação na barra de status, indicando que há uma notificação na gaveta.

2 Notificação "exibição parcial" na tela atual para chamar a atenção do usuário no meio de uma tarefa.

Gaveta de notificações

A gaveta de notificações no Android normalmente mostra notificações ordem cronológica inversa, com ajustes influenciados pelo seguinte condições:

  • A prioridade ou importância de notificação declarada do app
  • Se a notificação alertou recentemente o usuário com um som ou uma vibração
  • As pessoas anexadas à notificação e se são contatos marcados com estrela
  • Se a notificação representa uma atividade em andamento importante, como uma chamada telefônica em andamento ou música tocando
  • Alterações na aparência de algumas notificações pelo SO Android no no topo e no final da lista adicionando ênfase ou defasagem, o que ajuda conteúdo verificado pelo usuário

Processar notificações desatualizadas

A gaveta de notificação foi projetada para mostrar aos usuários informações relevantes para o momento atual. Se uma notificação anterior estiver desativada, ou seja, não é mais relevante, dispense-a para que não apareça para o usuário.

Figura 16:o texto recém-chegado aparece na parte superior da gaveta de notificação, com uma notificação de prioridade mais baixa sobre uma foto sendo adicionada às parte de baixo

Novas notificações indicadas pelo ícone do app

Em telas de início compatíveis em dispositivos que executam o Android 8.0 (nível 26 da API) e versões mais recentes, ícones de apps exibem um ponto de notificação para indicar que o aplicativo tem uma nova notificação associada a ele. Esses pontos aparecem por padrão nos apps na tela de início que oferecem suporte a elas, e não há nada que seu aplicativo precise fazer. Os selos também podem ser desativadas e limitadas.

Figura 17. Ponto de notificação no ícone de um app, indicando o app tem uma nova notificação associada

Ações que os usuários podem realizar com as notificações

As notificações podem permitir que os usuários realizem as seguintes ações:

  • Navegar até um destino: para navegar, o usuário pode tocar em uma notificação. Se o é exibida em uma tela bloqueada, o usuário precisa tocar duas vezes nela e e insira o PIN, o padrão ou a senha.

    Quando o usuário toca em uma notificação, o app precisa exibir uma interface relacionada. diretamente a essa notificação e permite que o usuário realize ações imediatas. Para por exemplo, se a notificação disser que é a vez deles em um jogo de duas pessoas, basta tocar na notificação para ir diretamente ao jogo.

  • Veja uma exibição expandida da notificação: um indicador de expansão aparece na cabeçalho. O usuário pode tocar no indicador ou deslizar para baixo no corpo da notificação para expandi-la.

    Figura 18:notificação expandida
  • Dispensar a notificação (se permitido): o usuário pode dispensar a notificação deslizando-a. esquerda ou direita.

Notificações contínuas que indicam um processo contínuo em segundo plano, como enquanto a música estiver tocando, pode não ser dispensada deslizando.

  • Adiar uma notificação de alerta: um usuário pode deslizar para cima em um alerta: notificação, e nenhuma outra notificação desse evento poderá ser pulsam por um minuto.

  • Controlar notificações semelhantes no futuro: os usuários podem acessar as notificações controlado por:

    • Toque e segurando uma notificação individual
    • Deslize a notificação para a esquerda ou direita e, em seguida, toque no ícone de configurações

Os controles exibidos variam de acordo com a versão do Android e se o app tem canais para suas notificações (a partir do Android 8.0).

Agrupar várias notificações

Para apps que geram várias notificações do mesmo tipo, o Android oferece agrupamento de notificações para evitar sobrecarregar os usuários.

Seu app pode apresentar várias notificações de acordo com as seguintes informações: hierarquia.

  • Uma notificação principal exibe um resumo das suas notificações filhas.
  • Se o usuário expandir a notificação mãe, o Android revelará todas as notificações notificações.
  • Um usuário pode expandir uma notificação filha para revelar todo o conteúdo dela.

O Android apresenta notificações filhas sem informações de cabeçalho duplicadas. Para Por exemplo, se uma notificação filha tiver o mesmo ícone do app que a principal, a o cabeçalho do filho não tiver um ícone.

As notificações filhas precisam ser compreensíveis se aparecerem sozinhas, já que o sistema poderá mostrá-los fora do grupo quando eles chegarem.

Figura 19:notificações agrupadas com visualizações recolhidas e expandidas.

Configurações

Canais

A partir do Android 8.0 (API de nível 26), todas as notificações devem ser atribuídas a um canal. Para cada canal, você pode definir o comportamento visual e auditivo que é aplicada a todas as notificações desse canal. Os usuários podem mudar essas configurações e decidir quais canais de notificação do app podem ser invasivos ou visíveis.

Para detalhes sobre como implementar isso, consulte Criar e gerenciar notificações canais.

A importância deve ser escolhida levando em consideração o tempo e a atenção. Quando uma notificação sem importância está disfarçada como urgente, ela pode produza um alarme desnecessário.

Importância Comportamento Uso Exemplos
HIGH Emite um som e aparece na tela informações urgentes que o usuário precisa saber ou agir imediatamente Mensagens de texto, alarmes e chamadas telefônicas
DEFAULT Emite um som Informações que devem ser vistas o mais rápido possível para o usuário, mas que não interrompem o que ele está fazendo Alertas de trânsito, lembretes de tarefas
LOW Sem som Canais de notificação que não atendem aos requisitos dos outros níveis de importância Novo conteúdo em que o usuário se inscreveu, convites de redes sociais
MIN Sem som ou interrupção visual Informações não essenciais que podem aguardar ou não são especificamente relevantes para o usuário. Lugares de interesse por perto, clima, conteúdo promocional

Categorias predefinidas

Independentemente de usar canais ou não, atribua cada notificação individual ao qual é a categoria predefinida mais adequada. O Android pode usar essas informações para fazer para tomar decisões de classificação e filtragem.

Categoria Descrição
CATEGORY_CALL Chamada recebida (voz ou vídeo) ou solicitação semelhante de comunicação síncrona
CATEGORY_MESSAGE Mensagem direta recebida (SMS, mensagem instantânea etc.)
CATEGORY_EMAIL Mensagens em lote assíncronas (e-mail)
CATEGORY_EVENT Evento da agenda
CATEGORY_PROMO Promoção ou publicidade
CATEGORY_ALARM Alarme ou cronômetro
CATEGORY_PROGRESS Andamento de uma operação em segundo plano de execução longa
CATEGORY_SOCIAL Atualização de rede social ou compartilhamento
CATEGORY_ERROR Erro em operação de segundo plano ou status de autenticação
CATEGORY_TRANSPORT Controle de transporte de mídia para reprodução
CATEGORY_SYSTEM Atualização do sistema ou do status do dispositivo. Reservado para uso do sistema.
CATEGORY_SERVICE Indicação de serviço de segundo plano em execução
CATEGORY_RECOMMENDATION Uma recomendação específica e oportuna para uma única coisa. Por exemplo, um app de notícias pode recomendar uma notícia que o usuário queira ler em seguida.
CATEGORY_STATUS Informações contínuas sobre o dispositivo ou status contextual

Notificações na tela de bloqueio

Se um usuário tiver optado por mostrar notificações quando a tela estiver bloqueada, esses as notificações podem ocultar qualquer conteúdo marcado como confidencial. Android avalia o nível de visibilidade de cada notificação para determinar o que pode mostrados.

Definir o nível de sensibilidade do conteúdo nas telas de bloqueio

A privacidade do usuário é muito importante, então saiba que existem diferentes níveis de notificação que podem ficar visíveis na tela de bloqueio. Para cada notificação criada, será necessário definir o nível de visibilidade como público, privado, ou secreta.

  • As notificações públicas ficam totalmente visíveis nas telas de bloqueio seguras.
  • As notificações secretas ficam ocultas.
  • As notificações particulares ficam no meio: elas só mostram informações básicas, incluindo o nome do app que postou e o ícone dele. Em vez de conteúdo normal, que fica oculto, é possível mostrar o texto que não revela informações pessoais, como 2 new messages.

No exemplo a seguir, as notificações da tela de bloqueio para o Gmail e o Google Fotos aplicativos mostram todo o conteúdo depois que o usuário opta por mostrar essas informações na tela de bloqueio.

Figura 20. Tela de bloqueio com diferentes níveis de sensibilidade.

1 Todo o conteúdo de notificações mostrado na tela de bloqueio

2 Conteúdo sensível de notificações oculto na tela de bloqueio

Estilo

Texto claro e conciso

O Android trunca títulos de conteúdo em uma única linha (mesmo quando expandidos).

Um bom título de conteúdo segue estas diretrizes:

  • Não excede 30 caracteres
  • Contém as informações mais importantes
  • Evita variáveis (a menos que elas contenham um número ou uma string de texto curta ou sejam precedido por texto)
  • Exclui o nome do aplicativo, que já aparece no cabeçalho
Mostrar o nome do app no título do conteúdo, que é redundante com a área do cabeçalho e usa caracteres disponíveis.
Mostrar as informações mais importantes no título do conteúdo.

Um bom conteúdo de texto segue estas diretrizes:

  • Não ultrapassa o limite de 40 caracteres
  • Evita repetir o que está no título do conteúdo

O ícone grande

Use o ícone grande para casos de uso em que as imagens reforçam significativamente a ao conteúdo da notificação. Por exemplo:

  • Comunicações de outra pessoa, como a imagem de alguém enviando uma mensagem
  • A fonte do conteúdo, se for diferente do app que enviou a notificação como o logotipo de um canal do YouTube em que um usuário está inscrito
  • Símbolos importantes sobre a notificação, como um símbolo de seta para dirigir rotas

Ícones grandes precisam ser circulares ao mostrar uma pessoa, mas quadrados em todas as outras partes casos de uso diferentes.

Use o ícone grande para branding.
Use o ícone grande para reforçar o conteúdo de uma notificação de forma significativa, como a foto de uma pessoa anexada a uma notificação de mensagem.

Atualizações de versões do Android

A interface do sistema de notificações do Android e as APIs relacionadas a notificações evoluir. Para obter uma lista dessas alterações, consulte a notificação compatibilidade.

Considerações sobre a plataforma

Wear

Se o usuário tiver um dispositivo Wear OS pareado, todas as notificações serão exibidas nele. automaticamente, incluindo detalhes expansíveis e botões de ação. Para mais detalhes, consulte a página de design para notificações no Wear.