Questa pagina fornisce assistenza per la risoluzione dei problemi e risposte alle domande frequenti su Cloud Messaging.
Qual è la differenza tra il compositore di notifiche e FCM?
Firebase Cloud Messaging fornisce un set completo di funzionalità di messaggistica tramite i suoi SDK client e il protocollo del server HTTP. Per i deployment con requisiti di messaggistica più complessi, FCM è la scelta giusta.
Notifications Composer è una soluzione di messaggistica leggera e serverless basata su Firebase Cloud Messaging. Grazie a una console grafica intuitiva e a requisiti di codifica ridotti, il compositore di notifiche consente agli utenti di inviare messaggi per coinvolgere e fidelizzare gli utenti, favorire la crescita delle app e supportare le campagne di marketing.
| Funzionalità |
|
Compositore di notifiche |
Cloud Messaging |
| Destinazione |
Singolo dispositivo |
|
|
|
Clienti iscritti ad argomenti (ad es. meteo) |
|
|
|
Client in un segmento di utenti predefinito (app, versione, lingua) |
|
|
|
Clienti in segmenti di pubblico di Analytics specifici |
|
|
|
Clienti nei gruppi di dispositivi |
|
|
|
A monte dal client al server |
|
|
| Tipo di messaggio |
Notifiche fino a 2 KB |
|
|
|
Messaggi di dati fino a 4 kB |
|
|
| Consegna |
Immediata |
|
|
|
Ora locale futura del dispositivo client |
|
|
| Analytics |
Raccolta di analisi delle notifiche integrate e analisi del funnel |
|
|
Devo utilizzare altri servizi Firebase per utilizzare FCM?
Puoi utilizzare Firebase Cloud Messaging come componente autonomo, senza utilizzare altri servizi Firebase.
Perché i miei dispositivi di destinazione
apparentemente non ricevono i messaggi?
Se sembra che i dispositivi non abbiano ricevuto correttamente i messaggi, controlla innanzitutto queste due potenziali cause:
Gestione dei messaggi in primo piano per i messaggi di notifica. Le app client devono
aggiungere la logica di gestione dei messaggi per gestire i messaggi di notifica quando l'app è in
primo piano sul dispositivo. Consulta i dettagli per
iOS e
Android.
Limitazioni del firewall di rete. Se la tua organizzazione ha un firewall che limita il traffico da o verso internet, devi configurarlo in modo da consentire la connettività con FCM affinché le tue app client Firebase Cloud Messaging possano ricevere messaggi. Le porte da aprire sono:
FCM di solito utilizza la porta 5228, ma a volte utilizza le porte 5229 e 5230.
FCM non fornisce IP specifici, quindi devi consentire al firewall di accettare connessioni in uscita a tutti gli indirizzi IP contenuti nei blocchi IP elencati nell'ASN 15169 di Google.
Perché
onMessageReceived non viene chiamato nella mia app per Android?
Quando l'app è in background, i messaggi di notifica vengono visualizzati nella barra delle applicazioni e onMessageReceived non viene chiamato. Per i messaggi di notifica con un payload di dati, il messaggio di notifica viene visualizzato nella barra delle applicazioni e i dati inclusi nel messaggio di notifica possono essere recuperati dall'intent avviato quando l'utente tocca la notifica.
Per saperne di più, consulta Ricevi e gestisci i messaggi.
Perché ricevo un errore 404 quando invio messaggi a un'istanza dell'app attiva ripristinata da un backup?
L'ID installazione Firebase (FID) è l'identificatore di un'istanza dell'app. Per impostazione predefinita,
i dati di installazione Firebase vengono sottoposti a backup e ripristinati. Pertanto, nel caso del ripristino, l'istanza dell'app ripristinata e l'istanza dell'app originale condividono lo stesso FID. Poiché FCM memorizza un solo token per FID, se sono in uso sia l'istanza dell'app originale sia quella ripristinata, quando un'istanza dell'app si registra con FCM, il token dell'altra istanza dell'app viene rimosso, causando errori 404.
Consigliamo agli sviluppatori di eseguire le seguenti operazioni nella loro app:
- Escludi
i dati di installazione di Firebase nel backup. I dati di installazione di Firebase vengono archiviati in un file
PersistedInstallation....json. Il nome file è una costante per un'app. Ad esempio, <exclude domain="file" path="PersistedInstallation.W0R...GQ.json"
/>
Apple
ha annunciato il ritiro del protocollo binario legacy per APN. Devo fare qualcosa?
No. Firebase Cloud Messaging è passata al protocollo APN basato su HTTP/2 nel 2017.
Se utilizzi FCM per inviare notifiche ai dispositivi iOS, non dovresti
intraprendere alcuna azione.
Quote e limiti di FCM
Come faccio a inviare una notifica a un'ampia base di clienti in 2 minuti?
Questo caso d'uso non può essere supportato. Devi distribuire il traffico su 5 minuti.
La mia app invia notifiche agli utenti sugli eventi e questi messaggi devono essere recapitati immediatamente per supportare il mio modello di business. Posso ottenere più quota?
Purtroppo non possiamo concedere aumenti della quota per questo motivo. Devi distribuire il traffico su 5 minuti per evitare picchi di traffico.
I miei messaggi riguardano
eventi programmati. Come faccio a inviare tutto il traffico all'inizio dell'ora?
Ti consigliamo di iniziare a inviare le notifiche almeno 5 minuti prima dell'evento. In alternativa, invia messaggi di dati e implementa l'equivalente del gestore onMessageReceived della tua piattaforma per pianificare le notifiche locali in anticipo.
Gli errori 429 sono difficili da gestire per me e la mia attività. Posso ottenere un'esenzione o una quota maggiore per evitare di ricevere errori 429?
Sebbene ci rendiamo conto che i limiti di quota possono essere difficili da gestire, le quote sono fondamentali per
mantenere l'affidabilità del servizio e non possiamo concedere esenzioni. Utilizza i nuovi tentativi per gestire correttamente gli errori 429.
Quanto tempo
ci vorrà per soddisfare la mia richiesta di aumento della quota?
La tua richiesta di aumento della quota dipende dall'utilizzo di FCM. In ogni caso, dovresti ricevere una risposta entro pochi giorni lavorativi. In alcuni casi, potrebbero esserci alcuni scambi di comunicazioni in merito al tuo utilizzo di
FCM e a varie circostanze, il che può prolungare la procedura. Se tutti i requisiti sono soddisfatti, la maggior parte delle richieste viene gestita entro 2 settimane.
Posso ottenere una quota maggiore per un evento temporaneo?
Puoi richiedere una quota aggiuntiva per supportare un evento della durata massima di un mese.
Presenta la richiesta almeno 1 mese prima dell'evento e con dettagli chiari su quando inizia e finisce l'evento. FCM farà ogni sforzo pratico per soddisfare la richiesta. Se concessi, questi aumenti della quota verranno annullati dopo la data di fine dell'evento.
La mia quota attuale è soggetta
a modifiche?
Anche se Google non lo farà alla leggera, le quote potrebbero essere modificate in base alle necessità per proteggere l'integrità del sistema. Quando possibile, Google ti informerà in anticipo di queste modifiche. Mantieni aggiornati i tuoi contatti Cloud MSA per aumentare le probabilità di ricevere annunci di servizio.
FCM deprecazioni delle API legacy
API lato server ritirate a settembre 2026
Quali API e funzionalità sono deprecate e verranno dismesse? Che cosa devo fare se utilizzo queste API?
Tutte le API server InstanceId
e la funzionalità del gruppo di dispositivi sono
ritirate e verranno dismesse il 29 settembre 2027. La tabella seguente mostra maggiori dettagli sulle API/funzionalità ritirate e sull'azione richiesta.
| Nome API
|
Endpoint API
|
Uso previsto
|
Impatto sul cliente
|
Azione richiesta
|
| API InstanceId info
|
https://iid.googleapis.com/iid/info
|
Ottenere informazioni relative a un token InstanceId / FCM
|
Le richieste a questa API inizieranno a non andare a buon fine dopo il 29 settembre 2027.
|
Per i clienti che utilizzano l'API per la convalida dei token, utilizza l'API di invio V1 di FCM e imposta validate_only su true.
I clienti che utilizzano l'API per ottenere informazioni sugli abbonamenti agli argomenti devono eseguire la migrazione alla nuova API per gli abbonamenti agli argomenti.
|
| API di iscrizione agli argomenti InstanceId
|
https://iid.googleapis.com/iid/v1/…/rel/topics
https://iid.googleapis.com/iid/v1:batchAdd
https://iid.googleapis.com/iid/v1:batchRemove
|
Sottoscrizione di token a un argomento tramite l'API di sottoscrizione all'argomento legacy.
|
Le richieste a queste API inizieranno a non andare a buon fine dopo il 29 settembre 2027.
|
Esegui la migrazione alla nuova API server per l'iscrizione agli argomenti di FCM per l'iscrizione e l'annullamento dell'iscrizione agli argomenti.
|
| API InstanceId batch import
|
https://iid.googleapis.com/iid/v1:batchImport
|
Creazione di token FCM per iOS in un batch lato server.
|
Le richieste a questa API inizieranno a non andare a buon fine dopo il 29 settembre 2027.
La creazione di registrazioni FCM dai token APN sul lato server non sarà supportata.
|
Puoi utilizzare il servizio APN di Apple per inviare notifiche utilizzando i token APN.
Per usufruire di vantaggi aggiuntivi forniti da FCM, integra la tua app con l'SDK iOS di FCM, che creerà registrazioni di FCM sul client.
|
| API di gestione dei gruppi di dispositivi
|
https://fcm.googleapis.com/fcm/notification
https://fcm.googleapis.com/gcm/notification
https://fcm.googleapis.com/iid/notification
https://fcm.googleapis.com/notification
|
Aggiunta / rimozione/ recupero dei membri del gruppo di dispositivi.
|
Le richieste a questa API inizieranno a non andare a buon fine dopo il 29 settembre 2027.
|
Consulta le indicazioni per la migrazione dalla funzionalità.
I messaggi possono comunque essere inviati a singole registrazioni FCM anziché a token di gruppo.
|
| Invio a un gruppo di dispositivi
|
https://fcm.googleapis.com/v1/projects/…/messages:send
|
Invio di messaggi a gruppi di dispositivi utilizzando la chiave di notifica del gruppo.
|
Questa API continuerà a funzionare, ma non supporterà i token del gruppo di dispositivi dopo il 29 settembre 2027.
|
Se utilizzo l'SDK Firebase Admin per gestire le iscrizioni agli argomenti, la deprecazione avrà un impatto su di me? Che cosa devo fare?
Se utilizzi versioni precedenti dell'SDK Firebase Admin per gestire le iscrizioni agli argomenti, il ritiro avrà un impatto sulla tua attività.
Dovrai eseguire l'upgrade dell'SDK Firebase Admin alle
seguenti versioni:
| Piattaforma
|
Versione dell'SDK Admin interessata
|
Versione dell'SDK Admin di cui eseguire l'upgrade
|
| Node.js
|
<=14.4.0
|
>=14.5.0
|
| Python
|
<=7.6.0
|
>=7.7.0
|
| Java
|
<=9.10.0
|
>=9.11.0
|
| Vai
|
<=4.21.0
|
>=4.22.0
|
| .NET
|
<=3.6.0
|
>=3.7.0
|
Vedrò un downgrade del servizio prima del 29 settembre 2027?
No. Hai 12 mesi di tempo per eseguire la migrazione dalle API ritirate alle alternative senza alcun downgrade del servizio. Ti consigliamo vivamente di pianificare la migrazione il prima possibile per evitare di subire l'impatto del ritiro.
È previsto che riceverai errori quando chiami le API ritirate dopo il 29 settembre 2027.
I nuovi utenti possono eseguire l'onboarding delle API/funzionalità ritirate prima del ritiro?
I nuovi utenti possono eseguire l'onboarding delle API/funzionalità ritirate prima del 1° gennaio 2027.
Dopo il 1° gennaio 2027, i nuovi utenti non potranno utilizzare le API deprecate.
Gli utenti che utilizzano le API ritirate possono continuare a utilizzarle fino al 29 settembre 2027.