
Das AppboyKit (auch bekannt als Objective-C SDK) wird nicht mehr unterstützt und wurde durch das Swift SDK. ] ersetzt. Es wird keine neuen Features, Fehlerbehebungen, Sicherheitsupdates oder technischen Support mehr erhalten - Messaging und Analytics werden jedoch weiterhin wie gewohnt funktionieren. Weitere Informationen finden Sie unter Einführung in das neue Braze Swift SDK.
Zustellung von In-App-Nachrichten
Trigger-Typen
Unser In-App-Nachricht-Produkt ermöglicht es Ihnen, die Anzeige von In-App-Nachrichten als Ergebnis verschiedener Event-Typen zu triggern: Any Purchase, Specific Purchase, Session Start, Custom Event und Push Click. Darüber hinaus enthalten die Trigger Specific Purchase und Custom Event umfangreiche Eigenschaftsfilter.

Getriggerte In-App-Nachrichten funktionieren nur mit angepassten Events, die über das Braze SDK protokolliert werden. In-App-Nachrichten können nicht über die API oder durch API-Events (wie z. B. Kauf-Events) getriggert werden. Wenn Sie mit iOS arbeiten, besuchen Sie unseren Artikel zum Tracking angepasster Events, um mehr zu erfahren.
Zustellungs-Semantik
Alle In-App-Nachrichten, für die ein:e Nutzer:in qualifiziert ist, werden beim Sitzungsstart an das Gerät der/des Nutzer:in zugestellt. Falls zwei In-App-Nachrichten durch ein Event getriggert werden, wird die In-App-Nachricht mit der höheren Priorität angezeigt. Weitere Informationen zur Sitzungsstart-Semantik des SDK finden Sie unter Sitzungslebenszyklus. Bei der Zustellung ruft das SDK Assets vorab ab, damit sie zum Trigger-Zeitpunkt sofort verfügbar sind, um die Anzeigelatenz zu minimieren.
Wenn ein Trigger-Event mehr als eine qualifizierte In-App-Nachricht hat, wird nur die In-App-Nachricht mit der höchsten Priorität zugestellt.
Bei In-App-Nachrichten, die sofort bei der Zustellung angezeigt werden (Sitzungsstart, Push-Klick), kann es zu einer gewissen Latenz kommen, da Assets nicht vorab abgerufen wurden.
Minimales Zeitintervall zwischen Triggern
Standardmäßig werden In-App-Nachrichten auf einmal alle 30 Sekunden begrenzt, um ein hochwertiges Nutzungserlebnis zu ermöglichen.
Sie können diesen Wert über den ABKMinimumTriggerTimeIntervalKey innerhalb des appboyOptions-Parameters überschreiben, der an startWithApiKey:inApplication:withLaunchOptions:withAppboyOptions: übergeben wird. Setzen Sie den ABKMinimumTriggerTimeIntervalKey auf den ganzzahligen Wert, den Sie als minimale Zeit in Sekunden zwischen In-App-Nachrichten verwenden möchten:
1
2
3
4
5
// Sets the minimum trigger time interval to 5 seconds
[Appboy startWithApiKey:@"YOUR-API-KEY"
inApplication:application
withLaunchOptions:options
withAppboyOptions:@{ ABKMinimumTriggerTimeIntervalKey : @(5) }];
1
Appboy.start(withApiKey: "YOUR-API-KEY", in:application, withLaunchOptions:launchOptions, withAppboyOptions:[ABKMinimumTriggerTimeIntervalKey : 5])
Kein passender Trigger gefunden
Wenn Braze keinen passenden Trigger für ein bestimmtes Event findet, wird die Methode noMatchingTriggerForEvent:name: des ABKInAppMessageControllerDelegate aufgerufen. Implementieren Sie diese Methode in Ihrer Klasse, die das Delegate-Protokoll übernimmt, um dieses Szenario zu behandeln.
Lokale Zustellung von In-App-Nachrichten
Der In-App-Nachrichten-Stack
In-App-Nachrichten anzeigen
Wenn Nutzer:innen berechtigt sind, eine In-App-Nachricht zu erhalten, wird dem ABKInAppMessageController die neueste In-App-Nachricht vom In-App-Nachrichten-Stack angeboten. Der Stack speichert In-App-Nachrichten nur im Arbeitsspeicher und wird zwischen App-Starts aus dem Ruhezustand geleert.

Zeigen Sie keine In-App-Nachrichten an, während die Tastatur auf dem Bildschirm angezeigt wird, da das Rendering in diesem Fall nicht definiert ist.
In-App-Nachrichten zum Stack hinzufügen
Nutzer:innen sind in den folgenden Situationen berechtigt, eine In-App-Nachricht zu erhalten:
- Ein Trigger-Event für In-App-Nachrichten wird ausgelöst
- Sitzungsstart-Event
- Die App wird über eine Push-Benachrichtigung geöffnet
Getriggerte In-App-Nachrichten werden auf den Stack gelegt, wenn ihr Trigger-Event ausgelöst wird. Wenn sich mehrere In-App-Nachrichten im Stack befinden und darauf warten, angezeigt zu werden, zeigt Braze die zuletzt empfangene In-App-Nachricht zuerst an (Last-in, First-out).
In-App-Nachrichten zum Stack zurückgeben
Eine getriggerte In-App-Nachricht kann in den folgenden Situationen zum Stack zurückgegeben werden:
- Die In-App-Nachricht wird getriggert, während die App im Hintergrund ist.
- Eine andere In-App-Nachricht wird gerade angezeigt.
- Die veraltete
beforeInAppMessageDisplayed:withKeyboardIsUp:UI-Delegate-Methode wurde nicht implementiert und die Tastatur wird gerade angezeigt. - Die
beforeInAppMessageDisplayed:Delegate-Methode oder die veraltetebeforeInAppMessageDisplayed:withKeyboardIsUp:UI-Delegate-Methode hatABKDisplayInAppMessageLaterzurückgegeben.
In-App-Nachrichten verwerfen
Eine getriggerte In-App-Nachricht wird in den folgenden Situationen verworfen:
- Die
beforeInAppMessageDisplayed:Delegate-Methode oder die veraltetebeforeInAppMessageDisplayed:withKeyboardIsUp:UI-Delegate-Methode hatABKDiscardInAppMessagezurückgegeben. - Das Asset (Bild oder ZIP-Datei) der In-App-Nachricht konnte nicht heruntergeladen werden.
- Die In-App-Nachricht ist bereit zur Anzeige, hat aber die Timeout-Dauer überschritten.
- Die Geräteausrichtung stimmt nicht mit der Ausrichtung der getriggerten In-App-Nachricht überein.
- Die In-App-Nachricht ist eine Vollbild-In-App-Nachricht, enthält aber kein Bild.
- Die In-App-Nachricht ist eine reine Bild-Modal-In-App-Nachricht, enthält aber kein Bild.
Anzeige von In-App-Nachrichten manuell in die Warteschlange stellen
Wenn Sie eine In-App-Nachricht zu einem anderen Zeitpunkt in Ihrer App anzeigen möchten, können Sie die oberste In-App-Nachricht im Stack manuell anzeigen, indem Sie die folgende Methode aufrufen:
1
[[Appboy sharedInstance].inAppMessageController displayNextInAppMessage];
1
Appboy.sharedInstance()!.inAppMessageController.displayNextInAppMessage()
Realtime-Erstellung und -Anzeige von In-App-Nachrichten
In-App-Nachrichten können auch lokal innerhalb der App erstellt und über Braze angezeigt werden. Dies ist besonders nützlich, um Nachrichten anzuzeigen, die Sie in Realtime innerhalb der App triggern möchten. Braze unterstützt keine Analytics für lokal erstellte In-App-Nachrichten.
1
2
3
4
5
ABKInAppMessageSlideup *customInAppMessage = [[ABKInAppMessageSlideup alloc] init];
customInAppMessage.message = @"YOUR_CUSTOM_SLIDEUP_MESSAGE";
customInAppMessage.duration = 2.5;
customInAppMessage.extras = @{@"key" : @"value"};
[[Appboy sharedInstance].inAppMessageController addInAppMessage:customInAppMessage];
1
2
3
4
5
let customInAppMessage = ABKInAppMessageSlideup.init()
customInAppMessage.message = "YOUR_CUSTOM_SLIDEUP_MESSAGE"
customInAppMessage.duration = 2.5
customInAppMessage.extras = ["key": "value"]
Appboy.sharedInstance()!.inAppMessageController.add(customInAppMessage)