Participe do Firebase Summit on-line e presencialmente em 18 de outubro de 2022. Veja como o Firebase pode ajudar a acelerar o desenvolvimento de apps, a lançar seu aplicativo com confiança e a fazer o escalonamento facilmente. Inscreva-se agora

Definir e gerenciar a prioridade da mensagem

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

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

  • Prioridade normal. Esta é a prioridade padrão para mensagens de dados . As mensagens de prioridade normal são entregues imediatamente quando o dispositivo não está dormindo. Quando o dispositivo está no modo Doze , a entrega pode ser atrasada para economizar bateria até que o dispositivo saia do modo de soneca. Para mensagens menos urgentes, como notificações de novos e-mails, manter sua interface do usuário sincronizada ou sincronizar dados de aplicativos em segundo plano, escolha a prioridade de entrega normal.

    Ao receber uma mensagem de prioridade normal no Android que solicita uma sincronização de dados em segundo plano para seu aplicativo, você pode agendar uma tarefa com o WorkManager para tratá-la quando a rede estiver disponível.

  • Prioridade máxima. O FCM tenta entregar mensagens de alta prioridade imediatamente, permitindo que o FCM desperte um dispositivo adormecido quando necessário e execute algum processamento limitado (incluindo acesso à rede muito limitado). As mensagens de alta prioridade geralmente devem resultar na interação do usuário com seu aplicativo ou suas notificações.

Usando mensagens de alta prioridade para Android

As mensagens de alta prioridade no Android são destinadas a conteúdo sensível ao tempo e visível ao usuário e devem resultar em notificações voltadas para o usuário. Se o FCM detectar um padrão no qual as mensagens não resultam em notificações voltadas para o usuário, suas mensagens podem ser despriorizadas para prioridade normal. O FCM usa 7 dias de comportamento de mensagem ao determinar se as mensagens devem ser despriorizadas; ele faz essa determinação independentemente para cada instância de seu aplicativo. Se, em resposta a mensagens de alta prioridade, as notificações forem exibidas de forma visível para o usuário, suas futuras mensagens de alta prioridade não terão prioridade. Isso se aplica se a notificação for exibida pelo SDK do FCM por meio de uma mensagem de notificação ou uma notificação gerada pelo desenvolvedor por meio de uma mensagem de dados .

Como medir a despriorização de mensagens no Android

  • Mensagens Individuais. Na entrega, você pode determinar se uma mensagem individual foi despriorizada ou não comparando sua prioridade entregue, de getPriority() , com sua prioridade original, de getOriginalPriority()

  • Todas as mensagens. A API de dados de entrega agregados do FCM pode informar qual porcentagem de todas as suas mensagens para o Android está sendo priorizada. Algumas mensagens podem ser omitidas dos relatórios de dados agregados, mas, em geral, devem fornecer uma visão global das taxas de despriorização de mensagens. Consulte nosso artigo sobre dados de entrega agregados para obter mais informações e código de amostra para consultar a API; ele também pode ser explorado a partir do explorador de API .

Solução de problemas

  • Certifique-se de que sua instância do aplicativo tenha as notificações ativadas. Se o usuário desativou a permissão de notificação para seu aplicativo, nenhuma de suas notificações será postada, como resultado, suas mensagens terão prioridade. Você deve verificar se as notificações estão habilitadas antes de enviar mensagens de alta prioridade para uma instância do aplicativo.

  • Não ligue para casa antes de postar uma notificação. Como uma pequena parte da população móvel Android está em redes de alta latência, evite abrir uma conexão com seus servidores antes de exibir uma notificação. Chamar de volta para o servidor antes do final do tempo de processamento permitido pode ser arriscado para usuários em redes de alta latência. Em vez disso, inclua o conteúdo da notificação na mensagem do FCM e exiba-o imediatamente. Se você precisar sincronizar conteúdo adicional no aplicativo no Android, poderá agendar uma tarefa com o WorkManager para lidar com isso em segundo plano.