Zum Inhalt springen

Einrichten des Nachrichten-Posteingangs für Flutter

Der Nachrichten-Posteingang (der „Glockensymbol“-App-Posteingang) für Flutter wird als separates pushwoosh_inbox-Paket geliefert. Installieren Sie es neben dem Basis-Paket pushwoosh_flutter.

Voraussetzungen

Anchor link to

Paket hinzufügen

Anchor link to

Fügen Sie pushwoosh_inbox zu Ihrer pubspec.yaml hinzu. Überprüfen Sie die aktuelle Version auf pub.dev:

pubspec.yaml
dependencies:
pushwoosh_inbox: '^2.3.24'

Posteingang anzeigen

Anchor link to
import 'package:pushwoosh_inbox/pushwoosh_inbox.dart';
PushwooshInbox.presentInboxUI();

Dies öffnet einen nativen Bildschirm (einen View Controller auf iOS, eine Activity auf Android) mit dem Standardaussehen des SDKs.

Stil anpassen

Anchor link to

Übergeben Sie ein PWInboxStyle an presentInboxUI(). Jedes Feld ist optional und behält seinen Standardwert bei, wenn es nicht gesetzt wird. Bildfelder sind Flutter-Asset-Pfade und müssen in Ihrer pubspec.yaml deklariert werden:

FeldPasst an
dateFormatDatumsformatierung, z. B. "dd.MMMM.yyyy"
defaultImageDas Standardsymbol neben einer Nachricht ohne Bild
unreadImageDie Markierung für ungelesene Nachrichten (nur iOS)
listErrorImageWird angezeigt, wenn das Laden der Liste fehlschlägt
listEmptyImageWird angezeigt, wenn die Liste keine Nachrichten enthält
listErrorMessageFehlertext (nicht lokalisiert)
listEmptyMessageText für leere Liste (nicht lokalisiert)
barTitleDer Titel des Posteingang-Bildschirms
defaultTextColorStandardtextfarbe (nur iOS)
accentColorAkzentfarbe
backgroundColorHintergrundfarbe
highlightColorAuswahlfarbe
titleColorFarbe des Nachrichtentitels
readTitleColorTitelfarbe für gelesene Nachrichten (nur Android)
descriptionColorFarbe der Nachrichtenbeschreibung
readDescriptionColorBeschreibungsfarbe für gelesene Nachrichten (nur Android)
dateColorFarbe des Nachrichtendatums
readDateColorDatumsfarbe für gelesene Nachrichten (nur Android)
dividerColorTrennlinienfarbe
barBackgroundColorDie Hintergrundfarbe der Titelleiste
barAccentColorDie Farbe des Zurück-Buttons der Titelleiste
barTextColorDie Textfarbe der Titelleiste
imageTypeColorDie Farbe des Aktionssymbols für ungelesene Nachrichten, z. B. Deep Link oder URL (nur Android)
readImageTypeColorDie Farbe des Aktionssymbols für gelesene Nachrichten (nur Android)
PWInboxStyle style = PWInboxStyle();
style.barTitle = "Nachrichten";
style.barBackgroundColor = "#3AD29F";
style.accentColor = "#6750A4";
style.listEmptyMessage = "Noch keine Nachrichten";
style.defaultImage = "assets/images/logo.png";
PushwooshInbox.presentInboxUI(style: style);

Nachrichten programmatisch verwalten

Anchor link to

Laden Sie die Nachrichtenliste, die Anzahl der gelesenen Nachrichten und führen Sie Aktionen für einzelne Nachrichten aus, ohne den integrierten Bildschirm zu öffnen. Dies ist nützlich für eine benutzerdefinierte Posteingangsoberfläche oder ein Abzeichen für ungelesene Nachrichten:

try {
List<InboxMessage> messages = await PushwooshInbox.loadMessages();
for (final message in messages) {
print("${message.title}: ${message.message}");
}
int? unread = await PushwooshInbox.unreadMessagesCount();
int? total = await PushwooshInbox.messagesCount();
int? notActedOn = await PushwooshInbox.messagesWithNoActionPerformedCount();
} catch (error) {
print("Fehler beim Laden der Posteingangsdaten: $error");
}
PushwooshInbox.readMessage(messageCode);
PushwooshInbox.deleteMessage(messageCode);
PushwooshInbox.performAction(messageCode); // führt die Standardaktion der Nachricht aus, z. B. das Öffnen einer URL

loadCachedMessages() gibt die letzte lokal zwischengespeicherte Liste ohne einen Netzwerkaufruf auf Android zurück. Auf iOS verhält es sich derzeit genauso wie loadMessages() und ruft immer noch das Netzwerk auf.