Benachrichtigungen bei Livemeldungen erstellen

Livemeldungen bieten eine Zusammenfassung wichtiger Updates, damit Nutzer den Fortschritt verfolgen können, ohne die App öffnen zu müssen. Das System hebt Benachrichtigungen zu Livemeldungen hervor, Nutzer können sie jedoch vorübergehend schließen oder zu einer Standardbenachrichtigung herabstufen. Promoted Notifications werden auf Systemoberflächen deutlicher angezeigt, z. B. oben in der Benachrichtigungsleiste und auf dem Sperrbildschirm sowie als Chip in der Statusleiste. Benachrichtigungen zu Livemeldungen sollten den Benachrichtigungsprinzipien entsprechen, um kurze, zeitnahe und relevante Informationen zu liefern.

Abbildung 1. Beispiel für eine Benachrichtigung bei Livemeldungen

Karten für Werbebenachrichtigungen haben die folgenden Merkmale:

  • Standardmäßig maximiert
  • Nicht minimierbar

Ihre Benachrichtigung muss die folgenden Anforderungen erfüllen, um als Livemeldung zu gelten:

Merkmale der Werbeaktion

Mit den folgenden APIs können Sie feststellen, ob das System Ihre Benachrichtigung hervorhebt:

  • Notification.FLAG_PROMOTED_ONGOING gibt an, ob die Benachrichtigung beworben wird.
  • Notification.hasPromotableCharacteristics() prüft, ob das System die Benachrichtigung hochstufen kann. Bei dieser Methode wird nicht berücksichtigt, ob der Nutzer Livemeldungen für die App in den Einstellungen deaktiviert hat.
  • NotificationManager.canPostPromotedNotifications() prüft, ob Ihre App eine Werbenachricht posten kann, z. B. ob der Nutzer sie in den Einstellungen aktiviert oder deaktiviert hat.
  • Settings.ACTION_MANAGE_APP_PROMOTED_NOTIFICATIONS ist die Intent-Aktion, mit der Apps Nutzer zu den Einstellungen weiterleiten können, um diese Funktion zu aktivieren.

Nutzungskriterien

Verwende Livemeldungen für laufende, vom Nutzer initiierte und zeitkritische Aktivitäten.

Abbildung 2. Eine Livemeldung auf dem Start- und Sperrbildschirm und als Chip.

Aktiv

Eine Livemeldung muss eine Aktivität darstellen, die aktiv im Gange ist und einen klaren Anfang und ein klares Ende hat. Wenn eine Aktivität in der Vergangenheit liegt, verwenden Sie keine Livemeldung. Verwenden Sie stattdessen eine Standardbenachrichtigung. Das gilt auch für Ereignisse, die noch nicht begonnen haben. Für Ereignisse, die kurz vor dem Beginn stehen, kann jedoch ein Live-Update verwendet werden.

Livemeldungen stehen für laufende Aktivitäten. Verwenden Sie Livemeldungen nicht, um einen beschleunigten Zugriff auf App-Funktionen anzubieten. Verwenden Sie dazu ein App-Widget oder eine benutzerdefinierte Schnelleinstellungen-Kachel.

  • Angemessene Verwendung:Aktive Navigation, laufende Telefonanrufe, aktives Tracking von Mitfahrgelegenheiten und aktives Tracking von Essenslieferungen.
  • Unangemessene Verwendung: Anzeigen, Werbeaktionen, Chatnachrichten, Benachrichtigungen, anstehende Kalendertermine und Schnellzugriff auf App-Funktionen.

Von Nutzern initiiert

Die meisten Livemeldungen sollten Aktivitäten darstellen, die explizit vom Nutzer ausgelöst werden, z. B. das Starten eines Trainings, das Initiieren einer Routenführung oder das Bestellen einer Mitfahrgelegenheit. Zeige in einer Livemeldung keine Umgebungsinformationen an, z. B. Informationen zur Umgebung des Nutzers, zu seinen Interessen oder zu anstehenden Ereignissen. Lassen Sie nicht zu, dass Aktivitäten, die von anderen Parteien ausgelöst werden, Livemeldungen generieren.

Manchmal führt ein Nutzer eine Aktion aus, die eine Aktivität für einen Zeitpunkt in der Zukunft initiiert. Beispielsweise, wenn der Nutzer Tickets für einen Flug oder ein Konzert kauft, sich für ein Turnier anmeldet oder auf andere Weise seine zukünftige Teilnahme an einer zeitkritischen Veranstaltung angibt. In diesen Fällen kann es sinnvoll sein, automatisch eine Livemeldung anzuzeigen, wenn das geplante Ereignis beginnt. Apps müssen ihre Trigger jedoch so einstellen, dass sie nur dann angezeigt werden, wenn die Aktivität unmittelbar bevorsteht. Wenn der Nutzer explizit angibt, dass er ein Hintergrundereignis wie ein Sportspiel verfolgen möchte, kannst du Livemeldungen für dieses Ereignis posten. Du solltest aber auch eine Aktion zum Aufheben der Fixierung in die zugehörige Benachrichtigung einfügen.

Zeitkritisch

Zeige eine Livemeldung nur an, wenn sie während der Aktivität die Aufmerksamkeit des Nutzers erfordert. Ein wichtiger Anwendungsfall für Livemeldungen ist das Monitoring, bei dem der Nutzer einen erheblichen Vorteil daraus zieht, wenn er die Livemeldung im Blick behält, um den sich ändernden Status der Aktivität zu verfolgen.

Ein Live-Update ist oft für Aktivitäten geeignet, die zwischen Live-Updates und normalen Benachrichtigungen wechseln. Beispielsweise ist es sinnvoll, eine Benachrichtigung mit einer Bordkarte viele Stunden vor dem Flug eines Nutzers anzuzeigen. Die Benachrichtigung sollte jedoch erst dann zu einer Livemeldung werden, wenn der Nutzer sie dringend benötigt, z. B. wenn er am Flughafen oder Veranstaltungsort angekommen ist oder das Boarding begonnen hat. Im Gegensatz dazu ist eine Livemeldung nicht für die Paketverfolgung geeignet, da der Nutzer diese nicht ständig im Blick behalten muss.

UX-Praktiken

Verwende das Tracker-Symbol, um den Status zu visualisieren. Diese kann dynamisch aktualisiert werden.

Benutzerdefinierter Tracker auf einer Fortschrittsanzeige
Abbildung 3: Ein benutzerdefiniertes Tracker-Symbol.

Wenn die voraussichtliche Ankunftszeit berechnet wird oder noch nicht verfügbar ist, sollte kein leerer Status angezeigt werden. Verwenden Sie aktiven Platzhaltertext wie „Ich überlege…“ oder „Route wird neu berechnet…“, um anzuzeigen, dass das System arbeitet, wie im Beispiel gezeigt.

nicht leerer Status, um den Denkprozess anzuzeigen
Abbildung 4: Ein nicht leerer Status für Ihre Livemeldung.

Status-Chips

Mit Status-Chips können Nutzer Livemeldungen im Blick behalten, wenn die Benachrichtigung nicht sichtbar ist. Verwende setShortCriticalText oder setWhen, um wichtige Statusinformationen zu deiner fortschrittsbasierten Benachrichtigung zu vermitteln.

Status-Chip mit Symbol
Abbildung 5. Im unbestimmten Status wird das kleine Symbol Notification.Builder#setSmallIcon angezeigt.
Status-Chip mit Zeitangabe
Abbildung 6. Verwenden Sie Notification.Builder#setShortCriticalText, um die absolute Zeit anzuzeigen.
Status-Chip mit Informationen
Abbildung 7. Verwenden Sie Notification.Builder#setShortCriticalText, um wichtige Informationen zu vermitteln.

Wenn die Zeit

Die Zeitangabe löst einen Countdown für die Dauer der Benachrichtigung aus, sofern die Benachrichtigung nicht geschlossen oder aktualisiert wird. In den folgenden Aufzählungspunkten wird beschrieben, wie die Zeit in verschiedenen Situationen funktioniert:

  • Die „Wann“-Zeit liegt mindestens 2 Minuten in der Zukunft: Wenn die aktuelle Zeit 10:05 Uhr ist und die „Wann“-Zeit auf 10:10 Uhr festgelegt ist, wird im Chip 5 Min. angezeigt.
  • Der Zeitpunkt liegt in der Vergangenheit: Der Text wird nicht angezeigt.
  • Wenn Sie Chronometer für die Zeit verwenden, kann ein Timer im Chip angezeigt werden. Weitere Informationen finden Sie unter setUsesChronometer und setChronometerCountdown. Der Chronometer-Timer wird im Chip angezeigt, solange er positiv ist.
  • Wenn Sie nicht möchten, dass die Uhrzeit in der Benachrichtigung angezeigt wird, verwenden Sie setShowWhen, um FALSE.

Darstellung des Status-Chips

Der Status-Chip enthält immer ein Symbol und optional Text. Der Chip hat eine maximale Breite von 96 dp. Der Text wird nur angezeigt, wenn er vollständig in den Chip passt. Der Text wird anhand der folgenden Kriterien angezeigt:

  • Wenn der Text weniger als 7 Zeichen hat, wird er vollständig angezeigt.
  • Wenn weniger als die Hälfte des Textes angezeigt wird, sollte nur das Symbol zu sehen sein.
  • Wenn mehr als die Hälfte des Textes angezeigt wird, sollte so viel Text wie möglich angezeigt werden.

Wear OS

Livemeldungen werden an einige verbundene Wear OS-Geräte weitergeleitet. Eine Anleitung zu diesem Überbrückungsverhalten sowie zum Erstellen lokaler Livemeldungen für Wear OS finden Sie im Leitfaden zu Wear OS-Livemeldungen.

Dismissal

Nutzer können die Sichtbarkeit von Benachrichtigungen in der Benachrichtigungsleiste steuern. Wenn unerwünschte Livemeldungen gepostet werden, kann es sein, dass Nutzer die Berechtigung zum Posten für eine App widerrufen.

Damit Nutzer Livemeldungen nicht vollständig deaktivieren, sollten Sie keine Updates posten, die Nutzer möglicherweise ablehnen. Poste keine Livemeldungen, die der Nutzer verworfen hat. Verwenden Sie setDeleteIntent, um abgelehnte Updates zu erkennen.

In der Beispiel-App können Sie diese APIs ausprobieren.

FAQ

Frage:Was ist der weiße Punkt am Ende der Fortschrittsanzeige?

Ende der Fortschrittsanzeige für Bedienungshilfen
Abbildung 8. Visualisierung der Barrierefreiheit am Ende der Fahrt

Antwort:Der weiße Punkt am Ende der Fortschrittsanzeige markiert das Ende der Fortschrittsanzeige.

Frage:Warum werden benutzerdefinierte Benachrichtigungen für Livemeldungen nicht unterstützt?

Antwort:Benutzerdefinierte Benachrichtigungen erschweren konsistente Tests und die UX, da sich ihr Verhalten je nach Android-Version und Gerätehersteller erheblich unterscheidet. Vermeide benutzerdefinierte Benachrichtigungen mit RemoteViews.