O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Permissão de notificação para notificações de ativação

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

As notificações no Android 13 usam um modelo opt-in, que é uma mudança em relação às versões anteriores do Android, que usam um modelo opt-out. Em 13, todos os aplicativos devem pedir permissão aos usuários antes de enviar avisos de notificação. Esse modelo ajuda a reduzir as interrupções de notificação, minimiza a sobrecarga de informações e ajuda os usuários a controlar quais notificações aparecem com base no que é importante para eles. Para oferecer suporte ao modelo opt-in, os OEMs devem implementar alterações nos sistemas de notificação e permissão de tempo de execução.

Esta página descreve o que os OEMs devem implementar para dar suporte a essa alteração e como validar a implementação.

Implementar alterações para notificações opt-in

A partir do Android 13, os aplicativos devem declarar sua intenção de enviar notificações solicitando a permissão de tempo de execução android.permission.POST_NOTIFICATION do sistema antes de enviar notificações.

No Android 13 e superior, a configuração que determina se um aplicativo pode enviar notificações ao usuário é armazenada no sistema de permissões. Antes do Android 13, essa configuração era armazenada no sistema de notificação. Portanto, os OEMs devem migrar os dados de notificação existentes sobre se um aplicativo tem permissão para enviar notificações, do sistema de notificação para o sistema de permissão de tempo de execução. Os OEMs também devem manter as APIs existentes no sistema de notificação que exibem esses dados para os desenvolvedores de aplicativos.

As alterações nos sistemas de notificação e permissão são baseadas no modelo opt-in do comportamento de notificação do usuário e são descritas na seção Diretrizes para implementação .

Comportamento das notificações do usuário em um modelo opt-in

A tabela a seguir ilustra o comportamento de notificação para várias versões do aplicativo em um dispositivo com Android 13:

Dispositivo no Android 13 Aplicativos direcionados ao Android 13 ou superior Aplicativos direcionados ao Android 13 ou inferior
Nova instalação As notificações são bloqueadas até serem solicitadas pelo aplicativo.

Os aplicativos controlam quando pedir permissão.

As notificações são bloqueadas até serem solicitadas pelo sistema operacional.

A permissão é solicitada na primeira execução do aplicativo.

Aplicativo existente (atualização) As notificações são permitidas até serem solicitadas pelo aplicativo.

A permissão temporária é concedida até que o aplicativo solicite na primeira corrida de qualificação.

As notificações são permitidas até serem solicitadas pelo sistema operacional.

A permissão temporária é concedida até a primeira execução do aplicativo.

Diretrizes para implementação

Para implementação de referência, consulte serviço de notificação , serviço de permissão e serviço de política . Para implementar exceções para manipuladores de permissão padrão, consulte Permissões de tempo de execução .

Durante a implementação, use as seguintes diretrizes sobre o comportamento de notificação do usuário para aplicativos direcionados a SDKs do Android 13 ou inferior:

  • Aplicativos recém-instalados em um dispositivo Android 13 não devem enviar uma notificação sem que o usuário aprove um prompt de permissão.
    • Se o aplicativo for direcionado às versões do Android 13 e superior, as notificações deverão ser bloqueadas até que sejam solicitadas pelo aplicativo, pois o aplicativo controla quando e se solicitar a permissão do usuário.
    • Se o aplicativo for direcionado a versões anteriores ao Android 13, as notificações deverão ser bloqueadas até que sejam solicitadas pelo sistema operacional. O sistema operacional deve mostrar o prompt de permissão na primeira execução do aplicativo.
  • Qualquer aplicativo que existia no dispositivo antes de uma atualização para o Android 13 ou qualquer aplicativo que foi restaurado por meio de backup e restauração deve ter permissão para enviar notificações até a primeira vez que o usuário iniciar uma atividade desse aplicativo.

    • Para aplicativos direcionados ao SDK das versões Android 13 e superior, se o usuário não tiver personalizado anteriormente as configurações de notificação para este aplicativo no nível do aplicativo ou do NotificationChannel , revogue a concessão de permissão temporária. Os aplicativos devem então pedir permissão ao usuário antes de continuar a enviar notificações.

      Se um aplicativo atualizado direcionado ao Android 13 não tiver atualmente a permissão de notificação por meio da concessão de atualização temporária e o usuário o tiver iniciado pelo menos uma vez, o aplicativo deverá mostrar um prompt de permissão de notificação antes de poder executar outros serviços em primeiro plano.

    • Para aplicativos que têm um SDK de destino de versões anteriores ao Android 13, intercepte a primeira inicialização de atividade após o aplicativo ter criado pelo menos um NotificationChannel para mostrar um prompt de permissão perguntando se o usuário deseja receber notificações do aplicativo.

      Se um usuário personalizou anteriormente as configurações de notificação no nível do aplicativo ou NotificationChannel para um aplicativo no dispositivo de atualização ou em um backup sendo restaurado no dispositivo, a configuração no nível do aplicativo deve ser migrada para o sistema de permissão com o sinalizador FLAG_PERMISSION_USER_SET . Nenhum outro prompt de permissão de notificação deve ser mostrado ao usuário, a menos que o aplicativo solicite especificamente que seja.

  • O backup e a restauração devem ser compatíveis com versões anteriores e posteriores entre um dispositivo Android 13 e um dispositivo de uma versão anterior do sistema operacional. Os dados de backup gerados a partir de um dispositivo Android 13 devem ser restaurados em uma versão anterior do sistema operacional e os dados de backup de uma versão anterior do sistema operacional devem ser restaurados em um dispositivo Android 13.

  • As notificações de mídia associadas à reprodução de mídia em andamento devem ser isentas da permissão de notificação.

Validar alterações nos sistemas de notificação e permissão

Para validar a implementação, execute os seguintes testes: