Skip to content

Erweiterte Beispiele für Push-Benachrichtigungen

Im folgenden Leitfaden finden Sie einige erweiterte Beispiele für Push-Benachrichtigungen für das Braze SDK.

Voraussetzungen

Bevor Sie dieses Feature nutzen können, müssen Sie das Android Braze SDK integrieren. Sie müssen außerdem Push-Benachrichtigungen einrichten.

Angepasstes Benachrichtigungslayout

Braze-Benachrichtigungen werden als Daten-Nachrichten versendet. Das bedeutet, dass Ihre Anwendung immer die Möglichkeit hat, zu reagieren und ein entsprechendes Verhalten auszuführen, auch im Hintergrund (im Gegensatz zu Benachrichtigungsnachrichten, die vom System automatisch verarbeitet werden können, wenn Ihre App im Hintergrund läuft). So hat Ihre Anwendung die Möglichkeit, das Erlebnis anzupassen, indem sie beispielsweise personalisierte UI-Elemente in der Benachrichtigung anzeigt, die dem Benachrichtigungsfach zugestellt wird. Auch wenn diese Art der Implementierung von Push für einige ungewohnt sein mag, ist eines unserer bekannten Features bei Braze, Push Stories, ein Paradebeispiel für die Verwendung angepasster Ansichtskomponenten, um ein ansprechendes Erlebnis zu schaffen!

Sie können die IBrazeNotificationFactory-Schnittstelle verwenden, um anzupassen, wie Push-Benachrichtigungen von Braze angezeigt werden. Durch die Erweiterung von BrazeNotificationFactory ruft Braze die Methode createNotification() Ihrer Factory auf, bevor die Benachrichtigung den Nutzer:innen angezeigt wird. Anschließend wird eine Nutzlast übergeben, die angepasste Schlüssel-Wert-Paare enthält, die über das Braze-Dashboard oder die REST API gesendet werden.

In diesem Abschnitt arbeiten Sie mit Superb Owl zusammen, dem Moderator einer neuen Spielshow, in der Teams zur Rettung von Wildtieren gegeneinander antreten, um zu sehen, wer die meisten Eulen retten kann. Sie möchten in ihrer Android-App Live-Update-Benachrichtigungen nutzen, um den Status eines laufenden Spiels anzuzeigen und dynamische Updates der Benachrichtigung in Echtzeit vorzunehmen.

Das Live Update, das Superb Owl zeigen möchte, zeigt ein laufendes Spiel zwischen „Wild Bird Fund“ und „Owl Rescue“. Es ist das vierte Viertel und der Spielstand ist 2:4 mit OWL in Führung.

1. Schritt: Ein angepasstes Layout hinzufügen

Sie können ein oder mehrere angepasste RemoteView-Layouts für Benachrichtigungen zu Ihrem Projekt hinzufügen. Diese sind hilfreich, um zu steuern, wie Benachrichtigungen im eingeklappten oder ausgeklappten Zustand angezeigt werden. Ihre Verzeichnisstruktur sollte in etwa so aussehen:

1
2
3
4
5
6
.
├── app/
└── res/
    └── layout/
        ├── liveupdate_collapsed.xml
        └── liveupdate_expanded.xml

Erstellen Sie in jeder XML-Datei ein angepasstes Layout. Superb Owl hat die folgenden Layouts für ihre eingeklappten und ausgeklappten RemoteView-Layouts erstellt:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <TextView
        android:id="@+id/notification_title"
        style="@style/TextAppearance.Compat.Notification.Title"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1" />
</LinearLayout>
Beispielcode anzeigen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

    <LinearLayout
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_gravity="center"

        android:layout_height="wrap_content"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/team1logo"
            android:layout_width="wrap_content"
            android:layout_height="60dp"
            android:layout_gravity="center"
            android:src="@drawable/team_default1"/>

        <TextView
            android:id="@+id/team1name"
            android:textAlignment="center"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

    </LinearLayout>

    <LinearLayout
        android:layout_width="0dp"
        android:layout_weight="1.6"
        android:layout_gravity="center"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <TextView
            android:id="@+id/score"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="2-4"
            android:textColor="#555555"
            android:textAlignment="center"
            android:textSize="32sp"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/timeInfo"
            android:textAlignment="center"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

    </LinearLayout>


    <LinearLayout
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_gravity="center"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/team2logo"
            android:layout_gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="60dp"
            android:src="@drawable/team_default2"/>

        <TextView
            android:id="@+id/team2name"
            android:textAlignment="center"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

    </LinearLayout>
</LinearLayout>

2. Schritt: Eine angepasste Benachrichtigungs-Factory erstellen

Erstellen Sie in Ihrer Anwendung eine neue Datei namens MyCustomNotificationFactory.kt, die BrazeNotificationFactory erweitert, um zu steuern, wie angepasste RemoteView-Layouts angezeigt werden.

Im folgenden Beispiel hat Superb Owl eine angepasste Benachrichtigungs-Factory erstellt, um ein RemoteView-Layout für laufende Spiele anzuzeigen. Im nächsten Schritt erstellen sie eine neue Methode namens getTeamInfo, um die Daten eines Teams der Aktivität zuzuordnen.

Beispielcode anzeigen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import android.app.Notification
import android.widget.RemoteViews
import androidx.core.app.NotificationCompat
import com.braze.models.push.BrazeNotificationPayload
import com.braze.push.BrazeNotificationFactory
import com.braze.push.BrazeNotificationUtils.getOrCreateNotificationChannelId
import com.braze.support.BrazeLogger.brazelog

class MyCustomNotificationFactory : BrazeNotificationFactory() {
    override fun createNotification(payload: BrazeNotificationPayload): Notification? {
        if (payload.extras.containsKey("live_update")) {
            val kvp = payload.extras
            val notificationChannelId = getOrCreateNotificationChannelId(payload)
            val context = payload.context

            if (context == null) {
                brazelog { "BrazeNotificationPayload has null context. Not creating notification" }
                return null
            }

            val team1 = kvp["team1"]
            val team2 = kvp["team2"]
            val score1 = kvp["score1"]
            val score2 = kvp["score2"]
            val time = kvp["time"]
            val quarter = kvp["quarter"]

            // Superb Owl will define the 'getTeamInfo' method in the next step.
            val (team1name, team1icon) = getTeamInfo(team1)
            val (team2name, team2icon) = getTeamInfo(team2)

            // Get the layouts to use in the custom notification.
            val notificationLayoutCollapsed = RemoteViews(BuildConfig.APPLICATION_ID, R.layout.liveupdate_collapsed)
            val notificationLayoutExpanded = RemoteViews(BuildConfig.APPLICATION_ID, R.layout.liveupdate_expanded)

            // Very simple notification for the small layout
            notificationLayoutCollapsed.setTextViewText(
                R.id.notification_title,
                "$team1 $score1 - $score2 $team2\n$time $quarter"
            )

            notificationLayoutExpanded.setTextViewText(R.id.score, "$score1 - $score2")
            notificationLayoutExpanded.setTextViewText(R.id.team1name, team1name)
            notificationLayoutExpanded.setTextViewText(R.id.team2name, team2name)
            notificationLayoutExpanded.setTextViewText(R.id.timeInfo, "$time - $quarter")
            notificationLayoutExpanded.setImageViewResource(R.id.team1logo, team1icon)
            notificationLayoutExpanded.setImageViewResource(R.id.team2logo, team2icon)

            val customNotification = NotificationCompat.Builder(context, notificationChannelId)
                .setSmallIcon(R.drawable.notification_small_icon)
                .setStyle(NotificationCompat.DecoratedCustomViewStyle())
                .setCustomContentView(notificationLayout)
                .setCustomBigContentView(notificationLayoutExpanded)
                .build()
            return customNotification
        } else {
            // Use the BrazeNotificationFactory for all other notifications
            return super.createNotification(payload)
        }
    }
}

3. Schritt: Angepasste Daten zuordnen

Erstellen Sie in MyCustomNotificationFactory.kt eine neue Methode zur Verarbeitung von Daten, wenn Live Updates angezeigt werden.

Superb Owl hat die folgende Methode erstellt, um den Namen und das Logo jedes Teams den ausgeklappten Live Updates zuzuordnen:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class CustomNotificationFactory : BrazeNotificationFactory() {
    override fun createNotification(payload: BrazeNotificationPayload): Notification? {
        // Your existing code
        return super.createNotification(payload)
    }

    // Your new method
    private fun getTeamInfo(team: String?): Pair<String, Int> {
        return when (team) {
            "WBF" -> Pair("Wild Bird Fund", R.drawable.team_wbf)
            "OWL" -> Pair("Owl Rehab", R.drawable.team_owl)
            else  -> Pair("Unknown", R.drawable.notification_small_icon)
        }
    }
}

4. Schritt: Die angepasste Benachrichtigungs-Factory festlegen

Verwenden Sie in Ihrer Anwendungsklasse customBrazeNotificationFactory, um Ihre angepasste Benachrichtigungs-Factory festzulegen.

1
2
3
4
5
6
7
8
9
10
import com.braze.Braze

class MyApplication : Application() {
    override fun onCreate() {
        super.onCreate()

        // Tell Braze to use your custom factory for notifications
        Braze.customBrazeNotificationFactory = MyCustomNotificationFactory()
    }
}

5. Schritt: Die Aktivität senden

Sie können den REST-API-Endpunkt /messages/send verwenden, um eine Push-Benachrichtigung an das Android-Gerät einer Nutzer:in zu senden.

Beispiel-curl-Befehl

Superb Owl hat die Anfrage mit dem folgenden curl-Befehl gesendet:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
curl -X POST "https://BRAZE_REST_ENDPOINT/messages/send" \
  -H "Authorization: Bearer {REST_API_KEY}" \
  -H "Content-Type: application/json" \
  --data '{
    "external_user_ids": ["USER_ID"],
    "messages": {
      "android_push": {
        "title": "WBF vs OWL",
        "alert": "2 to 4 1:33 Q4",
        "extra": {
          "live_update": "true",
          "team1": "WBF",
          "team2": "OWL",
          "score1": "2",
          "score2": "4",
          "time": "1:33",
          "quarter": "Q4"
        },
        "notification_id": "ASSIGNED_NOTIFICATION_ID"
      }
    }
  }'

Anfrageparameter

Schlüssel Beschreibung
REST_API_KEY Ein Braze-REST-API-Schlüssel mit messages.send-Berechtigungen.

Dieser kann im Braze-Dashboard unter Einstellungen > API-Schlüssel erstellt werden.
BRAZE_REST_ENDPOINT Ihre REST-Endpunkt-URL. Ihr Endpunkt hängt von der Braze-URL für Ihre Instanz ab.
USER_ID Die ID der Nutzer:in, an die Sie die Benachrichtigung senden.
messages.android_push.title Der Titel der Nachricht. Standardmäßig wird dieser nicht für die Live-Benachrichtigungen der angepassten Benachrichtigungs-Factory verwendet, kann aber als Fallback dienen.
messages.android_push.alert Der Text der Nachricht. Standardmäßig wird dieser nicht für die Live-Benachrichtigungen der angepassten Benachrichtigungs-Factory verwendet, kann aber als Fallback dienen.
messages.extra Schlüssel-Wert-Paare, die die angepasste Benachrichtigungs-Factory für Live-Benachrichtigungen verwendet. Sie können diesem Wert einen beliebigen String zuweisen—im obigen Beispiel wird jedoch live_updates verwendet, um festzustellen, ob es sich um eine Standard- oder eine Live-Push-Benachrichtigung handelt.
ASSIGNED_NOTIFICATION_ID Die Benachrichtigungs-ID, die Sie der Live-Benachrichtigung der gewählten Nutzer:in zuweisen möchten. Die ID muss für dieses Spiel eindeutig sein und muss verwendet werden, um die bestehende Benachrichtigung später zu aktualisieren.

6. Schritt: Die Aktivität aktualisieren

Um die bestehende RemoteView-Benachrichtigung mit neuen Daten zu aktualisieren, ändern Sie die entsprechenden Schlüssel-Wert-Paare, die messages.extra zugewiesen sind, und rufen Sie dann mit derselben notification_id den Endpunkt /messages/send erneut auf.

Personalisierte Push-Benachrichtigungen

Push-Benachrichtigungen können nutzerspezifische Informationen innerhalb einer angepassten Ansichtshierarchie anzeigen. Im folgenden Beispiel wird ein API-Trigger verwendet, um eine personalisierte Push-Benachrichtigung an eine Nutzer:in zu senden, damit diese ihren aktuellen Fortschritt nach Abschluss einer bestimmten Aufgabe in der App überprüfen kann.

Beispiel für ein personalisiertes Push-Dashboard

Um einen personalisierten Push im Dashboard einzurichten, registrieren Sie die spezifische Kategorie, die angezeigt werden soll, und legen Sie dann alle relevanten Nutzerattribute fest, die Sie mit Liquid anzeigen möchten.

Beispiel für ein personalisiertes Push-Dashboard

Voraussetzungen

Bevor Sie dieses Feature nutzen können, müssen Sie das Swift Braze SDK integrieren. Sie müssen außerdem Push-Benachrichtigungen einrichten.

App-Erweiterungen für Benachrichtigungsinhalte

Zwei nebeneinander angezeigte Push-Nachrichten. Die Nachricht auf der linken Seite zeigt, wie ein Push mit der Standard-UI aussieht. Die Nachricht auf der rechten Seite zeigt einen Push für eine Kaffeelochkarte, der durch die Implementierung einer angepassten Push-UI erstellt wurde.

App-Erweiterungen für Benachrichtigungsinhalte bieten Ihnen eine hervorragende Möglichkeit zur Anpassung von Push-Benachrichtigungen. Sie zeigen eine angepasste Oberfläche für die Benachrichtigungen Ihrer App an, wenn eine Push-Benachrichtigung erweitert wird.

Push-Benachrichtigungen können auf drei verschiedene Arten erweitert werden:

  • Langes Drücken auf das Push-Banner
  • Auf dem Push-Banner nach unten streichen
  • Das Banner nach links streichen und „Anzeigen“ auswählen

Diese angepassten Ansichten bieten intelligente Möglichkeiten für das Engagement Ihrer Kund:innen, indem sie verschiedene Arten von Inhalten anzeigen – darunter interaktive Benachrichtigungen, mit Nutzerdaten gefüllte Benachrichtigungen und sogar Push-Nachrichten, die Informationen wie Telefonnummern und E-Mail-Adressen erfassen können. Eines unserer bekannten Features bei Braze, Push Stories, ist ein Paradebeispiel dafür, wie eine App-Erweiterung für Push-Benachrichtigungsinhalte aussehen kann!

Voraussetzungen

  • Push-Benachrichtigungen erfolgreich in Ihre App integriert
  • Die folgenden Dateien, die von Xcode basierend auf Ihrer Programmiersprache generiert werden:

Swift

  • NotificationViewController.swift
  • MainInterface.storyboard

Objective-C

  • NotificationViewController.h
  • NotificationViewController.m
  • MainInterface.storyboard

Interaktive Push-Benachrichtigung

Push-Benachrichtigungen können auf Aktionen von Nutzer:innen innerhalb einer App-Erweiterung reagieren. Für Nutzer:innen mit iOS 12 oder höher bedeutet dies, dass Sie Ihre Push-Benachrichtigungen in vollständig interaktive Nachrichten verwandeln können! Dies bietet eine spannende Möglichkeit, Interaktivität in Ihre Aktionen und Anwendungen einzuführen. Ihre Push-Benachrichtigung kann zum Beispiel ein Spiel, ein Glücksrad für Rabatte oder einen „Gefällt mir“-Button zum Speichern eines Eintrags oder Songs enthalten.

Das folgende Beispiel zeigt eine Push-Benachrichtigung, bei der Nutzer:innen innerhalb der erweiterten Benachrichtigung ein Zuordnungsspiel spielen können.

Ein Diagramm, das zeigt, wie die Phasen einer interaktiven Push-Benachrichtigung aussehen könnten. Eine Sequenz zeigt, wie eine Person auf eine Push-Benachrichtigung drückt, die ein interaktives Zuordnungsspiel anzeigt.

Dashboard-Konfiguration

Um eine interaktive Push-Benachrichtigung zu erstellen, müssen Sie in Ihrem Dashboard eine angepasste Ansicht einrichten.

  1. Klicken Sie auf der Seite Campaigns auf Create Campaign, um eine neue Push-Benachrichtigungskampagne zu starten.
  2. Schalten Sie auf dem Tab Compose die Notification Buttons ein.
  3. Geben Sie eine angepasste iOS-Kategorie in das Feld iOS Notification Category ein.
  4. Legen Sie in der .plist Ihres Notification Content Extension Target das Attribut UNNotificationExtensionCategory auf Ihre angepasste iOS-Kategorie fest. Der hier angegebene Wert muss mit dem übereinstimmen, der im Braze-Dashboard unter iOS Notification Category eingestellt ist.
  5. Setzen Sie den Schlüssel UNNotificationExtensionInteractionEnabled auf true, um Nutzerinteraktionen in einer Push-Benachrichtigung zu aktivieren.

Die Optionen für Benachrichtigungsbuttons in den Einstellungen des Nachrichten-Editors.

Personalisierte Push-Benachrichtigungen

Zwei iPhones werden nebeneinander angezeigt. Das erste iPhone zeigt die nicht erweiterte Ansicht der Push-Nachricht. Das zweite iPhone zeigt die erweiterte Version der Push-Nachricht mit einer Fortschrittsanzeige, die zeigt, wie weit der Kurs fortgeschritten ist, den Namen der nächsten Sitzung und wann die nächste Sitzung abgeschlossen sein muss.

Push-Benachrichtigungen können nutzerspezifische Informationen innerhalb einer Inhaltserweiterung anzeigen. So können Sie nutzerfokussierte Push-Inhalte erstellen, z. B. die Option, Ihren Fortschritt auf verschiedenen Plattformen zu teilen, freigeschaltete Erfolge anzuzeigen oder Onboarding-Checklisten darzustellen. Dieses Beispiel zeigt eine Push-Benachrichtigung, die einer Person angezeigt wird, nachdem sie eine bestimmte Aufgabe im Braze-Lernkurs abgeschlossen hat. Durch Erweitern der Benachrichtigung können die Nutzer:innen ihren Fortschritt auf ihrem Lernpfad sehen. Die hier bereitgestellten Informationen sind nutzerspezifisch und können über einen API-Trigger ausgelöst werden, wenn eine Sitzung abgeschlossen ist oder eine bestimmte Nutzeraktion durchgeführt wird.

Dashboard-Konfiguration

Um eine personalisierte Push-Benachrichtigung zu erstellen, müssen Sie in Ihrem Dashboard eine angepasste Ansicht einrichten.

  1. Klicken Sie auf der Seite Campaigns auf Create Campaign, um eine neue Push-Benachrichtigungskampagne zu starten.
  2. Schalten Sie auf dem Tab Compose die Notification Buttons ein.
  3. Geben Sie eine angepasste iOS-Kategorie in das Feld iOS Notification Category ein.
  4. Erstellen Sie auf dem Tab Settings Schlüssel-Wert-Paare mit Standard-Liquid. Legen Sie die entsprechenden Nutzerattribute fest, die in der Nachricht angezeigt werden sollen. Diese Ansichten können basierend auf bestimmten Nutzerattributen eines bestimmten Nutzerprofils personalisiert werden.
  5. Legen Sie in der .plist Ihres Notification Content Extension Target das Attribut UNNotificationExtensionCategory auf Ihre angepasste iOS-Kategorie fest. Der hier angegebene Wert muss mit dem übereinstimmen, der im Braze-Dashboard unter iOS Notification Category eingestellt ist.

Vier Sätze von Schlüssel-Wert-Paaren, wobei „next_session_name“ und „next_session_complete_date“ als API-Trigger-Eigenschaft mit Liquid und „completed_session count“ und „total_session_count“ als angepasstes Nutzerattribut mit Liquid festgelegt werden.

Umgang mit Schlüssel-Wert-Paaren

Die Methode didReceive wird aufgerufen, wenn die App-Erweiterung für Benachrichtigungsinhalte eine Benachrichtigung erhalten hat. Diese Methode finden Sie in NotificationViewController. Die im Dashboard bereitgestellten Schlüssel-Wert-Paare werden im Code durch die Verwendung eines userInfo-Wörterbuchs dargestellt.

Schlüssel-Wert-Paare aus Push-Benachrichtigungen parsen

1
2
3
4
5
6
7
8
9
func didReceive(_ notification: UNNotification) {
  let userInfo = notification.request.content.userInfo

  guard let value = userInfo["YOUR-KEY-VALUE-PAIR"] as? String,
        let otherValue = userInfo["YOUR-OTHER-KEY-VALUE-PAIR"] as? String,
  else { fatalError("Key-Value Pairs are incorrect.")}

  ...
}
1
2
3
4
5
6
7
8
9
10
11
- (void)didReceiveNotification:(nonnull UNNotification *)notification {
  NSDictionary *userInfo = notification.request.content.userInfo;

  if (userInfo[@"YOUR-KEY-VALUE-PAIR"] && userInfo[@"YOUR-OTHER-KEY-VALUE-PAIR"]) {

  ...

  } else {
    [NSException raise:NSGenericException format:@"Key-Value Pairs are incorrect"];
  }
}

Push-Benachrichtigung zur Informationserfassung

Push-Benachrichtigungen können Nutzerinformationen innerhalb einer Inhaltserweiterung erfassen und so die Grenzen dessen erweitern, was mit einem Push möglich ist. Durch das Anfordern von Nutzereingaben über Push-Benachrichtigungen können Sie nicht nur grundlegende Informationen wie Name oder E-Mail abfragen, sondern Nutzer:innen auch auffordern, Feedback zu geben oder ein unvollständiges Nutzerprofil zu vervollständigen.

Im folgenden Ablauf kann die angepasste Ansicht auf Zustandsänderungen reagieren. Diese Zustandsänderungskomponenten werden in jedem Bild dargestellt.

  1. Die Person erhält eine Push-Benachrichtigung.
  2. Der Push wird geöffnet. Nach dem Erweitern fordert der Push zur Eingabe von Informationen auf. In diesem Beispiel wird die E-Mail-Adresse abgefragt, aber Sie können jede beliebige Information anfordern.
  3. Die Informationen werden eingegeben, und wenn sie im erwarteten Format vorliegen, wird der Registrierungs-Button angezeigt.
  4. Die Bestätigungsansicht wird angezeigt und der Push wird geschlossen.

Dashboard-Konfiguration

Um eine Push-Benachrichtigung zur Informationserfassung zu erstellen, müssen Sie in Ihrem Dashboard eine angepasste Ansicht einrichten.

  1. Klicken Sie auf der Seite Campaigns auf Create Campaign, um eine neue Push-Benachrichtigungskampagne zu starten.
  2. Schalten Sie auf dem Tab Compose die Notification Buttons ein.
  3. Geben Sie eine angepasste iOS-Kategorie in das Feld iOS Notification Category ein.
  4. Erstellen Sie auf dem Tab Settings Schlüssel-Wert-Paare mit Standard-Liquid. Legen Sie die entsprechenden Nutzerattribute fest, die in der Nachricht angezeigt werden sollen.
  5. Legen Sie in der .plist Ihres Notification Content Extension Target das Attribut UNNotificationExtensionCategory auf Ihre angepasste iOS-Kategorie fest. Der hier angegebene Wert muss mit dem übereinstimmen, der im Braze-Dashboard unter iOS Notification Category eingestellt ist.

Wie im Beispiel zu sehen, können Sie auch ein Bild in Ihre Push-Benachrichtigung einfügen. Dazu müssen Sie Rich-Benachrichtigungen integrieren, den Benachrichtigungsstil in Ihrer Campaign auf Rich-Benachrichtigung einstellen und ein Rich-Push-Bild einfügen.

Eine Push-Nachricht mit drei Sätzen von Schlüssel-Wert-Paaren. 1. „Braze_id“ als Liquid-Aufruf zum Abrufen der Braze-ID festgelegt. 2. „cert_title“ als „Braze Marketer Certification“ festgelegt. 3. „Cert_description“ als „Certified Braze marketers drive…“ festgelegt.

Verarbeitung von Button-Aktionen

Jeder Aktions-Button ist eindeutig gekennzeichnet. Der Code prüft, ob der Antwort-Bezeichner mit dem actionIdentifier übereinstimmt, und weiß dann, dass die Person auf den Aktions-Button geklickt hat.

Verarbeitung von Antworten auf Aktions-Buttons in Push-Benachrichtigungen

1
2
3
4
5
6
7
func didReceive(_ response: UNNotificationResponse, completionHandler completion: @escaping (UNNotificationContentExtensionResponseOption) -> Void) {
  if response.actionIdentifier == "YOUR-REGISTER-IDENTIFIER" {
    // do something
  } else {
    // do something else
  }
}
1
2
3
4
5
6
7
- (void)didReceiveNotificationResponse:(UNNotificationResponse *)response completionHandler:(void (^)(UNNotificationContentExtensionResponseOption))completion {
  if ([response.actionIdentifier isEqualToString:@"YOUR-REGISTER-IDENTIFIER"]) {
    completion(UNNotificationContentExtensionResponseOptionDismiss);
  } else {
    completion(UNNotificationContentExtensionResponseOptionDoNotDismiss);
  }
}

Ausblenden von Pushes

Push-Benachrichtigungen können durch Drücken eines Aktions-Buttons automatisch ausgeblendet werden. Es gibt drei vorgefertigte Optionen zum Ausblenden von Push-Nachrichten, die wir empfehlen:

  1. completion(.dismiss) – Blendet die Benachrichtigung aus
  2. completion(.doNotDismiss) – Die Benachrichtigung bleibt geöffnet
  3. completion(.dismissAndForward) – Der Push wird ausgeblendet und die Person wird in die Anwendung weitergeleitet
New Stuff!