Firebase In-App Messaging bietet eine Reihe nützlicher vorkonfigurierter Verhaltensweisen und Nachrichtentypen mit einem Standarddesign. In einigen Fällen möchten Sie jedoch möglicherweise Verhaltensweisen und Nachrichteninhalte erweitern. Mit In-App Messaging können Sie Nachrichten Aktionen hinzufügen und das Design von Nachrichten anpassen.
Nachricht eine Aktion hinzufügen
Mit Aktionen können Sie Nutzer über In-App-Nachrichten auf eine Website oder einen bestimmten Bildschirm in Ihrer App weiterleiten.
Handler für Deeplinks implementieren
Firebase In-App Messaging verwendet Link-Handler, um Aktionen zu verarbeiten. Das SDK kann eine Reihe von Handlern verwenden. Wenn Ihre App also bereits einen hat, kann Firebase In-App Messaging diesen ohne weitere Einrichtung verwenden. Wenn Sie noch keinen Handler haben, können Sie Firebase Dynamic Links verwenden. Weitere Informationen finden Sie unter Dynamische Links unter iOS erstellen.
Aktion über die Firebase Console zu Ihrer Nachricht hinzufügen
Sobald Ihre App einen Link-Handler hat, können Sie eine Kampagne mit einer Aktion erstellen.
Wechseln Sie in der Firebase Console zu DevOps & Engagement > Messaging.
Starten Sie den Workflow zum Einrichten einer neuen Kampagne:
Wenn dies Ihre erste Kampagne ist:
- Klicken Sie auf Erste Kampagne erstellen.
- Wählen Sie Firebase-In-App-Nachrichten aus und klicken Sie auf Erstellen.
Wenn Sie bereits Kampagnen erstellt haben:
- Klicken Sie auf dem Tab Kampagnen auf Neue Kampagne.
- Wählen Sie In-App Messaging aus.
Folgen Sie der Anleitung auf dem Bildschirm, um die Kampagne einzurichten.
Geben Sie eine Karte, einen Schaltflächentext und eine Schaltflächenaktion, eine Bildaktion oder eine Banneraktion an. Die Aktion ist ein relevanter Deeplink.
Das Format der Aktion hängt vom ausgewählten Nachrichtenlayout ab. Modale Nachrichten erhalten Aktionsschaltflächen mit anpassbarem Schaltflächentext, Textfarbe und Hintergrundfarbe. Bilder und Top-Banner hingegen werden interaktiv und rufen die angegebene Aktion auf, wenn darauf getippt wird.
Design von Nachrichten ändern
Firebase In-App Messaging ermöglicht Ihnen die Anpassung der Nachrichtenanzeige, um die Darstellung von Layout, Schriftarten, Schaltflächenformen und anderen Details von Nachrichten in Ihrer App zu ändern. Es gibt zwei Möglichkeiten, die Nachrichtenanzeige zu ändern: Sie können die StandardFirebase In-App Messaging Anzeigen ändern oder eine eigene Nachrichtenanzeigebibliothek von Grund auf erstellen.
Standardanzeigen ändern
Die einfachste Möglichkeit, Ihre Nachrichten anzupassen, besteht darin, den Standardcode für die Nachrichtenanzeige von Firebase In-App Messaging's zu verwenden.
Repository firebase-ios-sdk klonen
Klonen Sie zuerst die neueste Version
des Repositorys firebase-ios-sdk und öffnen Sie das
Verzeichnis „InAppMessaging“.
Zu ändernde Nachrichtentypen auswählen
Nachdem das Repository geklont wurde, können Sie alle oder einige der Firebase In-App Messaging Nachrichtentypen ändern:
Card, Modal, Banner, und ImageOnly. Jeder Typ entspricht einem
Nachrichtenlayout im Firebase In-App Messaging Workflow zur Kampagnenerstellung.
Dementsprechend hat jeder Typ Zugriff auf eine andere Reihe von Daten, die durch Kampagnenanpassungsoptionen in der Firebase Konsole bestimmt werden:
| Typ | titleText | bodyText | textColor | backgroundColor | imageData | Aktionsbutton | Sekundärer Aktionsbutton |
|---|---|---|---|---|---|---|---|
| Karte | |||||||
| Modal | |||||||
| Banner | |||||||
| Nur Bild |
Code für die Nachrichtenanzeige ändern
Unter Berücksichtigung der Einschränkungen für Nachrichtentypen können Sie diese beliebig ändern. Sie können ein Banner erstellen, das unten in Ihrer App angezeigt wird, die Aktionsschaltfläche in einem modalen Fenster verschieben, die In-App-Nachricht in den Feed eines Nutzers einbetten oder andere Änderungen vornehmen, damit das Design der Nachrichten zu Ihrer App passt.
Beim Ändern der Nachrichtenanzeige sind zwei Hauptpunkte zu beachten:
- Verzeichnisse für Nachrichtentypen:Jeder Nachrichtentyp hat ein separates Verzeichnis mit Dateien, die die Logik dieses Typs bestimmen:
- Storyboard:Die Bibliothek
InAppMessagingenthält auch eine.storyboard-Datei, mit der die UI für alle drei Nachrichtentypen definiert wird:
Ändern Sie die Dateien in den Verzeichnissen der gewünschten Nachrichtentypen und die entsprechenden Abschnitte der .storyboard-Datei, um Ihre benutzerdefinierten Nachrichtenanzeigen zu erstellen.
Podfile aktualisieren, um den geänderten InAppMessaging-Code zu verwenden
Damit Firebase In-App Messaging Ihre geänderten Nachrichtenanzeigen anstelle der Standard
Anzeigen verwendet, aktualisieren Sie Ihr Podfile, um Ihre angepasste InAppMessaging Bibliothek zu verwenden:
# Uncomment the next line to define a global platform for your project # platform :ios, '9.0' target 'YourProject' do # Comment the next line if you're not using Swift and don't want to use dynamic frameworks use_frameworks! # Pods for YourProject pod 'Firebase' # Remove the default InAppMessaging pod: # pod 'Firebase/InAppMessaging' # Overwrite it with a version that points to your local copy: pod `FirebaseInAppMessaging', :path => '~/Path/To/The/Cloned/Repo/' end
Eigene Nachrichtenanzeigebibliothek erstellen
Sie sind nicht darauf beschränkt, die InAppMessaging-Bibliothek zu verwenden, um eine UI für die Anzeige von Nachrichten zu erstellen. Sie können auch Ihren eigenen Code von Grund auf schreiben.
Klasse erstellen, die das Protokoll InAppMessagingDisplay implementiert
Firebase In-App Messaging verwendet die Klasse InAppMessaging, um die Kommunikation zwischen
Firebase-Servern und Ihrer App zu verarbeiten. Diese Klasse verwendet wiederum das
Protokoll InAppMessagingDisplay, um die empfangenen Nachrichten anzuzeigen.
Um eine eigene Anzeigebibliothek zu erstellen, schreiben Sie eine Klasse, die das Protokoll implementiert.
Die Protokolldefinition und die Dokumentation zur Einhaltung des Protokolls finden Sie in der
FIRInAppMessagingDisplay.h Datei der InAppMessaging Bibliothek.
messageDisplayComponent so festlegen, dass Ihre Nachrichtenanzeigebibliothek verwendet wird
InAppMessaging verwendet die Property
messageDisplayComponent
, um zu bestimmen, welches Objekt
beim Anzeigen von Nachrichten verwendet werden soll. Legen Sie diese Property auf ein Objekt Ihrer benutzerdefinierten
Nachrichtenanzeigeklasse fest, damit Firebase In-App Messaging Ihre Bibliothek zum Rendern von Nachrichten verwendet:
InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance