Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Gestione e manutenzione dei token dei dispositivi
Puoi garantire la consegna delle notifiche push della tua applicazione mobile seguendo questi passaggi:
-
Archivia tutti i token del dispositivo, l' ARNsendpoint Amazon SNS corrispondente e i timestamp sul tuo server delle applicazioni.
-
Rimuovi tutti i token obsoleti ed elimina l'endpoint Amazon SNS corrispondente. ARNs
All'avvio iniziale dell'app, riceverai un token del dispositivo (noto anche come token di registrazione) per il dispositivo. Questo token del dispositivo viene coniato dal sistema operativo del dispositivo ed è collegato all'applicazione FCM. Una volta ricevuto questo token del dispositivo, puoi registrarlo con Amazon SNS come endpoint della piattaforma. Ti consigliamo di archiviare il token del dispositivo, l'ARN dell'endpoint della piattaforma Amazon SNS e il timestamp salvandoli sul tuo server delle applicazioni o su un altro archivio persistente. Per configurare l'applicazione FCM per recuperare e archiviare i token del dispositivo, consulta Recuperare e archiviare i token di registrazione nella documentazione di Google su Firebase
È importante mantenere i token. up-to-date I token del dispositivo dell'utente possono cambiare nelle seguenti condizioni:
-
L'applicazione mobile viene ripristinata su un nuovo dispositivo.
-
L'utente disinstalla o aggiorna l'applicazione.
-
L'utente cancella i dati dell'applicazione.
Quando il token del dispositivo cambia, ti consigliamo di aggiornare l'endpoint Amazon SNS corrispondente con il nuovo token. Ciò consente ad Amazon SNS di continuare la comunicazione con il dispositivo registrato. Puoi farlo implementando il seguente pseudo codice all'interno della tua applicazione mobile. Descrive una pratica consigliata per la creazione e la manutenzione degli endpoint della piattaforma abilitati. Questo approccio può essere eseguito ogni volta che le applicazioni mobili vengono avviate o come processo pianificato in background.
Pseudocodice
Utilizza il seguente pseudo codice FCM per gestire e mantenere i token dei dispositivi.
retrieve the latest token from the mobile OS
if (endpoint arn not stored)
# first time registration
call CreatePlatformEndpoint
store returned endpoint arn
endif
call GetEndpointAttributes on the endpoint arn
if (getting attributes encountered NotFound exception)
#endpoint was deleted
call CreatePlatformEndpoint
store returned endpoint arn
else
if (token in endpoint does not match latest) or
(GetEndpointAttributes shows endpoint as disabled)
call SetEndpointAttributes to set the
latest token and enable the endpoint
endif
endif
Per ulteriori informazioni sui requisiti di aggiornamento dei token, consulta Aggiornare i token regolarmente nella documentazione di Google su Firebase
Rilevamento di token non validi
Quando un messaggio viene inviato a un endpoint FCM v1 con un token di dispositivo non valido, Amazon SNS riceverà una delle seguenti eccezioni:
-
UNREGISTERED
(HTTP 404) — Quando Amazon SNS riceve questa eccezione, riceverai un evento di erroreFailureType
diInvalidPlatformToken
consegna con un token di piattaformaFailureMessage
of e uno of associato all'endpoint non valido. Amazon SNS disabiliterà l'endpoint della piattaforma quando una consegna fallisce, con questa eccezione. -
INVALID_ARGUMENT
(HTTP 400) — Quando Amazon SNS riceve questa eccezione, significa che il token del dispositivo o il payload del messaggio non sono validi. Per ulteriori informazioni, consulta la documentazione di Google su ErrorCodeFirebase.
Poiché INVALID_ARGUMENT
può essere restituito in entrambi i casi, Amazon SNS restituirà un corpo FailureType
di InvalidNotification
notifica e uno FailureMessage
di non è valido. Quando ricevi questo errore, verifica che il payload sia corretto. Se è corretto, verifica che il token del dispositivo lo sia up-to-date. Amazon SNS non disattiverà l'endpoint della piattaforma quando una consegna fallisce, con questa eccezione.
Un altro caso in cui si verificherà un errore di InvalidPlatformToken
consegna è quando il token del dispositivo registrato non appartiene all'applicazione che tenta di inviare il messaggio. In questo caso, Google restituirà un errore SENDER_ID_MISMATCH. Amazon SNS disabiliterà l'endpoint della piattaforma quando una consegna fallisce, con questa eccezione.
Tutti i codici di errore rilevati ricevuti dall'API FCM v1 sono disponibili CloudWatch quando configuri la registrazione dello stato di consegna per la tua applicazione.
Per ricevere gli eventi di consegna della tua applicazione, consulta. Eventi applicazione disponibili
Rimuovere i token obsoleti
I token vengono considerati obsoleti una volta che il recapito dei messaggi al dispositivo endpoint inizia a fallire. Amazon SNS imposta questi token obsoleti come endpoint disabilitati per l'applicazione della tua piattaforma. Quando pubblichi su un endpoint disabilitato, Amazon SNS restituirà EventDeliveryFailure
un evento con FailureType
EndpointDisabled
of e FailureMessage
un endpoint disabilitato. Per ricevere eventi di consegna per la tua applicazione, consulta. Eventi applicazione disponibili
Quando ricevi questo errore da Amazon SNS, devi rimuovere o aggiornare il token obsoleto nell'applicazione della tua piattaforma.