Definir e gerenciar a prioridade da mensagem

Você tem duas opções para atribuir a prioridade de entrega para mensagens downstream no Android: prioridade normal e alta. A entrega de mensagens de prioridade normal e alta funciona da seguinte forma:

  • Prioridade normal. Essa é a prioridade padrão para mensagens de dados. As mensagens com prioridade normal são entregues imediatamente quando o dispositivo não está em suspensão. Quando o dispositivo está no modo Soneca, a entrega pode ser adiada para economizar bateria até que esse modo seja alterado. Para mensagens menos afetadas pelo tempo, como enviar notificações de novos e-mails, manter a sincronização da sua IU ou sincronizar os dados do app em segundo plano, escolha a prioridade normal de entrega.

    Ao receber uma mensagem de prioridade normal no Android que solicite uma sincronização de dados em segundo plano para o aplicativo, é possível agendar uma tarefa com o WorkManager (em inglês) que lidará com ela quando a rede estiver disponível.

  • Prioridade alta. O FCM tenta enviar mensagens de prioridade alta imediatamente, permitindo que o FCM ative um dispositivo em suspensão quando necessário e execute tarefas de processamento limitadas (inclusive acesso muito limitado à rede). As mensagens de prioridade alta devem resultar geralmente na interação do usuário com o app ou as notificações dele.

Como usar mensagens de prioridade alta para Android

As mensagens de prioridade alta no Android são destinadas a conteúdo visível pelo usuário e urgente. Além disso, elas precisam gerar notificações voltadas para o usuário. Se o FCM detectar um padrão em que as mensagens não gerem notificações para usuário, suas mensagens poderão passar a ter prioridade normal. Para determinar se é necessário remover a prioridade das mensagens, o FCM usa sete dias de comportamento da mensagem. Essa decisão é feita individualmente para cada instância do aplicativo. Se, em resposta a mensagens de prioridade alta, as notificações forem exibidas de maneira visível para o usuário, suas futuras mensagens de prioridade alta não serão priorizadas. Isso acontece se a notificação for exibida pelo SDK do FCM por uma mensagem de notificação ou por uma notificação gerada pelo desenvolvedor usando uma mensagem de dados.

Como avaliar a redução de prioridade da mensagem no Android

  • Mensagens individuais. Na entrega, é possível determinar se uma mensagem individual foi priorizada ou não, comparando a prioridade entregue de getPriority() com a prioridade original de getOriginalPriority().

  • Todas as mensagens. A API FCM Aggregate Delivery Data pode informar qual porcentagem das suas mensagens para Android estão tendo a prioridade reduzida. Algumas mensagens podem ser omitidas dos relatórios de dados agregados, mas, no geral, fornecem uma visão global das taxas de redução de prioridade das mensagens. Consulte nosso artigo sobre dados de entrega agregados para mais informações e exemplos de código para consultar a API. Também é possível saber mais em API Explorer.

Solução de problemas