Uma mensagem não recolhível significa que cada mensagem individual é entregue ao dispositivo. Uma mensagem não recolhível entrega conteúdo útil. Uma mensagem recolhível, como um ping sem conteúdo para um app para dispositivos móveis, entra em contato com o servidor para buscar dados.
Alguns casos de uso típicos de mensagens não recolhíveis são as mensagens de bate-papo ou críticas. No Android, há um limite de 100 mensagens que podem ser armazenadas sem serem recolhidas. Se o limite for atingido, todas as mensagens armazenadas serão descartadas. Quando o dispositivo está de volta on-line, recebe uma mensagem especial indicando que o limite foi atingido. O app pode então processar a situação, normalmente solicitando uma sincronização completa com o servidor do app.
Uma mensagem recolhível é uma mensagem que pode ser substituída por uma nova mensagem se ainda não tiver sido entregue ao dispositivo.
Um caso de uso comum das mensagens recolhíveis são as mensagens usadas para informar um aplicativo para dispositivos móveis que é preciso sincronizar dados do servidor. Um exemplo seria um app de esportes que atualiza os usuários com a pontuação mais recente. Somente a mensagem mais recente é relevante.
Para marcar uma mensagem como recolhível no Android, inclua o
parâmetro collapse_key
no
payload dela. Por padrão, a chave de recolhimento é o nome do pacote do app
registrado no Console do Firebase. O servidor do FCM pode
armazenar simultaneamente quatro mensagens recolhíveis diferentes por
dispositivo, cada uma com uma chave de recolhimento diferente. Se você exceder esse número,
o FCM manterá somente
quatro chaves de recolhimento, sem um fator determinante sobre quais serão mantidas.
As mensagens de tópico sem payload são recolhíveis por padrão. As mensagens de notificação
são sempre recolhíveis e ignoram o parâmetro collapse_key
.
Qual devo usar?
As mensagens recolhíveis são a opção preferida do ponto de vista de desempenho, desde que o app não precise usar mensagens não recolhíveis. No entanto, se você usar mensagens recolhíveis, lembre-se de que o FCM só permite usar no máximo quatro chaves de recolhimento diferentes pelo FCM por token de registro em qualquer momento.
Cenário de uso | Como enviar | |
---|---|---|
Não recolhível | Toda mensagem é importante para o app cliente e precisa ser entregue. | Com exceção das mensagens de notificação, todas as mensagens são não recolhíveis por padrão. |
Recolhível | Quando há uma mensagem mais recente que renderiza uma mais antiga, relacionada, mas irrelevante para o app cliente, o FCM substitui a mais antiga. Por exemplo: mensagens de notificação desatualizadas. | Defina o parâmetro apropriado na sua solicitação de mensagem:
|