Passen Sie Ihre Firebase In-App Messaging-Nachrichten an

Firebase In-App Messaging bietet einen nützlichen Satz vorkonfigurierter Verhaltensweisen und Nachrichtentypen mit einem Standard-Erscheinungsbild. In einigen Fällen möchten Sie jedoch möglicherweise Verhaltensweisen und Nachrichteninhalte erweitern. Mit In-App-Messaging können Sie Aktionen zu Nachrichten hinzufügen und das Erscheinungsbild der Nachricht anpassen.

Fügen Sie Ihrer Nachricht eine Aktion hinzu

Mit Aktionen können Sie Ihre In-App-Nachrichten verwenden, um Benutzer auf eine Website oder einen bestimmten Bildschirm in Ihrer App zu leiten.

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 Handler 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 auf iOS erstellen“ .

Fügen Sie die Aktion über die Firebase-Konsole zu Ihrer Nachricht hinzu

Sobald Ihre App über einen Link-Handler verfügt, können Sie eine Kampagne mit einer Aktion erstellen. Öffnen Sie die Firebase-Konsole für Messaging und starten Sie eine neue Kampagne oder bearbeiten Sie eine vorhandene Kampagne. Stellen Sie in dieser Kampagne eine Karte , einen Schaltflächentext und eine Schaltflächenaktion , eine Bildaktion oder eine Banneraktion bereit, wobei die Aktion ein relevanter Deep-Link ist.

Das Format der Aktion hängt davon ab, welches Nachrichtenlayout Sie wählen. Modale erhalten Aktionsschaltflächen mit anpassbarem Schaltflächentextinhalt, Textfarbe und Hintergrundfarbe. Bilder und Top-Banner hingegen werden interaktiv und lösen beim Antippen die angegebene Aktion aus.

Ändern Sie das Erscheinungsbild der Nachricht

Mit Firebase In-App Messaging können Sie die Nachrichtenanzeige anpassen, um die Art und Weise zu ändern, wie Ihre App das Layout, die Schriftarten, die Schaltflächenformen und andere Details von Nachrichten darstellt. Es gibt zwei Möglichkeiten, Nachrichtenanzeigen zu ändern: Ändern Sie die standardmäßigen Firebase In-App Messaging-Anzeigen oder erstellen Sie Ihre eigene Nachrichtenanzeigebibliothek von Grund auf.

Hinweis: Dieses Produkt ist nicht auf macOS-, Mac Catalyst-, App Clip- oder watchOS-Zielen verfügbar.

Standardanzeigen ändern

Die einfachste Möglichkeit, Ihre Nachrichten anzupassen, besteht darin, auf dem standardmäßigen Nachrichtenanzeigecode von Firebase In-App Messaging aufzubauen.

Klonen Sie das firebase-ios-sdk -Repository

Klonen Sie zunächst die neueste Version des firebase-ios-sdk Repositorys und öffnen Sie das InAppMessaging-Verzeichnis .

Wählen Sie die zu ändernden Nachrichtentypen aus

Wenn das Repository geklont ist, können Sie einen oder alle der Firebase In-App Messaging-Nachrichtentypen ändern: Card , Modal , Banner und ImageOnly . Jeder Typ entspricht einem Nachrichtenlayout im Erstellungsablauf für Firebase-In-App-Messaging-Kampagnen.

Dementsprechend hat jeder Typ Zugriff auf einen anderen Datensatz, der durch Kampagnenanpassungsoptionen in der Firebase-Konsole bestimmt wird:

Typ TitelText Hauptteil Textfarbe Hintergrundfarbe Bilddaten Aktionsknopf sekundärer Aktionsknopf
Karte
Modal
Banner
ImageOnly

Ändern Sie den Rendering-Code für die Nachrichtenanzeige

Unter Berücksichtigung der Einschränkungen des Nachrichtentyps können Sie diese nach Belieben ändern. Sie können ein Banner erstellen, das unten in Ihrer App angezeigt wird, sich um die Aktionsschaltfläche auf einem Modal bewegen, die In-App-Nachricht in den Feed eines Benutzers einbetten oder jede andere Änderung vornehmen, die das Erscheinungsbild der Nachrichten an Ihre App anpasst .

Beim Ändern der Nachrichtenanzeige sind vor allem zwei Dinge zu beachten:

  • Verzeichnisse für Nachrichtentypen: Jeder Nachrichtentyp verfügt über ein separates Verzeichnis mit Dateien, die die Logik dieses Typs bestimmen:
  • Storyboard: Die InAppMessaging Bibliothek verfügt außerdem über eine .storyboard Datei, die dabei hilft, die Benutzeroberfläche für alle drei Nachrichtentypen zu definieren:

Ändern Sie Dateien in den Verzeichnissen Ihrer bevorzugten Nachrichtentypen und den entsprechenden Abschnitten des .storyboard , um Ihre benutzerdefinierten Nachrichtenanzeigen zu erstellen.

Aktualisieren Sie Ihre Poddatei, um Ihren geänderten InAppMessaging Code zu verwenden

Damit Firebase In-App Messaging Ihre geänderten Nachrichtenanzeigen anstelle der Standardanzeigen verwendet, aktualisieren Sie Ihre Poddatei, um Ihre benutzerdefinierte 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
Wenn das erledigt ist, können Sie Ihre Pods aktualisieren, Ihre App neu erstellen und Ihre neuen, angepassten Nachrichtenanzeigen sehen.

Erstellen Sie Ihre eigene Nachrichtenanzeigebibliothek

Sie sind nicht darauf beschränkt, mit der InAppMessaging Bibliothek zu arbeiten, um eine Benutzeroberfläche zum Anzeigen von Nachrichten zu erstellen. Sie können auch Ihren eigenen Code von Grund auf schreiben.

Erstellen Sie eine Klasse, die das InAppMessagingDisplay -Protokoll implementiert

Firebase In-App Messaging verwendet die InAppMessaging Klasse, um die Kommunikation zwischen Firebase-Servern und Ihrer App abzuwickeln. Diese Klasse wiederum verwendet das InAppMessagingDisplay Protokoll, um die empfangenen Nachrichten anzuzeigen. Um Ihre eigene Anzeigebibliothek zu erstellen, schreiben Sie eine Klasse, die das Protokoll implementiert.

Die Protokolldefinition und Dokumentation zur Einhaltung finden Sie in der Datei FIRInAppMessagingDisplay.h der InAppMessaging Bibliothek.

Stellen Sie messageDisplayComponent so ein, dass Ihre Nachrichtenanzeigebibliothek verwendet wird

InAppMessaging verwendet seine messageDisplayComponent Eigenschaft, um zu bestimmen, welches Objekt beim Anzeigen von Nachrichten verwendet werden soll. Legen Sie diese Eigenschaft auf ein Objekt Ihrer benutzerdefinierten Nachrichtenanzeigeklasse fest, damit Firebase In-App Messaging Ihre Bibliothek zum Rendern von Nachrichten verwenden kann:

InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance