FCM basiert auf den folgenden Komponenten, die Nachrichten erstellen, transportieren und empfangen:
Tools zum Verfassen oder Erstellen von Nachrichtenanforderungen. Der Notifications Composer bietet eine GUI-basierte Option zum Erstellen von Benachrichtigungsanfragen. Für eine vollständige Automatisierung und Unterstützung aller Nachrichtentypen müssen Sie Nachrichtenanforderungen in einer vertrauenswürdigen Serverumgebung erstellen, die das Firebase Admin SDK oder die FCM-Serverprotokolle unterstützt. Diese Umgebung könnte Cloud Functions for Firebase, App Engine oder Ihr eigener App-Server sein.
Das FCM-Backend, das (neben anderen Funktionen) Nachrichtenanfragen akzeptiert, ein Fanout von Nachrichten über Themen durchführt und Nachrichtenmetadaten wie die Nachrichten-ID generiert.
Eine Transportschicht auf Plattformebene, die die Nachricht an das Zielgerät weiterleitet, die Nachrichtenzustellung handhabt und gegebenenfalls eine plattformspezifische Konfiguration anwendet. Diese Transportschicht umfasst:
- Android Transport Layer (ATL) für Android-Geräte mit Google Play-Diensten
- Apple Push Notification Service (APNs) für Apple-Geräte
Web-Push-Protokoll für Web-Apps
Das FCM-SDK auf dem Gerät des Benutzers, wo die Benachrichtigung angezeigt oder die Nachricht entsprechend dem Vordergrund-/Hintergrundstatus der App und relevanter Anwendungslogik behandelt wird.
Lebenszyklusfluss
- Registrieren Sie Geräte, um Nachrichten von FCM zu erhalten . Eine Instanz einer Client-App registriert sich für den Empfang von Nachrichten und erhält ein Registrierungstoken, das die App-Instanz eindeutig identifiziert.
- Senden und empfangen Sie Downstream-Nachrichten .
- Eine Nachricht schicken. Der App-Server sendet Nachrichten an die Client-App:
- Die Nachricht wird entweder im Benachrichtigungs-Composer oder in einer vertrauenswürdigen Umgebung erstellt, und eine Nachrichtenanforderung wird an das FCM-Back-End gesendet.
- Das FCM-Backend empfängt die Nachrichtenanforderung, generiert eine Nachrichten-ID und andere Metadaten und sendet sie an die plattformspezifische Transportschicht.
- Wenn das Gerät online ist, wird die Nachricht über die plattformspezifische Transportschicht an das Gerät gesendet.
- Auf dem Gerät empfängt die Client-App die Nachricht oder Benachrichtigung.
- Eine Nachricht schicken. Der App-Server sendet Nachrichten an die Client-App:
FCM basiert auf den folgenden Komponenten, die Nachrichten erstellen, transportieren und empfangen:
Tools zum Verfassen oder Erstellen von Nachrichtenanforderungen. Der Notifications Composer bietet eine GUI-basierte Option zum Erstellen von Benachrichtigungsanfragen. Für eine vollständige Automatisierung und Unterstützung aller Nachrichtentypen müssen Sie Nachrichtenanforderungen in einer vertrauenswürdigen Serverumgebung erstellen, die das Firebase Admin SDK oder die FCM-Serverprotokolle unterstützt. Diese Umgebung könnte Cloud Functions for Firebase, App Engine oder Ihr eigener App-Server sein.
Das FCM-Backend, das (neben anderen Funktionen) Nachrichtenanfragen akzeptiert, ein Fanout von Nachrichten über Themen durchführt und Nachrichtenmetadaten wie die Nachrichten-ID generiert.
Eine Transportschicht auf Plattformebene, die die Nachricht an das Zielgerät weiterleitet, die Nachrichtenzustellung handhabt und gegebenenfalls eine plattformspezifische Konfiguration anwendet. Diese Transportschicht umfasst:
- Android Transport Layer (ATL) für Android-Geräte mit Google Play-Diensten
- Apple Push Notification Service (APNs) für Apple-Geräte
Web-Push-Protokoll für Web-Apps
Das FCM-SDK auf dem Gerät des Benutzers, wo die Benachrichtigung angezeigt oder die Nachricht entsprechend dem Vordergrund-/Hintergrundstatus der App und relevanter Anwendungslogik behandelt wird.
Lebenszyklusfluss
- Registrieren Sie Geräte, um Nachrichten von FCM zu erhalten . Eine Instanz einer Client-App registriert sich für den Empfang von Nachrichten und erhält ein Registrierungstoken, das die App-Instanz eindeutig identifiziert.
- Senden und empfangen Sie Downstream-Nachrichten .
- Eine Nachricht schicken. Der App-Server sendet Nachrichten an die Client-App:
- Die Nachricht wird entweder im Benachrichtigungs-Composer oder in einer vertrauenswürdigen Umgebung erstellt, und eine Nachrichtenanforderung wird an das FCM-Back-End gesendet.
- Das FCM-Backend empfängt die Nachrichtenanforderung, generiert eine Nachrichten-ID und andere Metadaten und sendet sie an die plattformspezifische Transportschicht.
- Wenn das Gerät online ist, wird die Nachricht über die plattformspezifische Transportschicht an das Gerät gesendet.
- Auf dem Gerät empfängt die Client-App die Nachricht oder Benachrichtigung.
- Eine Nachricht schicken. Der App-Server sendet Nachrichten an die Client-App: