Das System bewirbt Benachrichtigungen zu Live-Updates. Beworbene Benachrichtigungen werden auf Systemoberflächen deutlicher angezeigt, z. B. oben in der Benachrichtigungsleiste und auf dem Sperrbildschirm sowie als Chip in der Statusleiste.

Karten für beworbene Benachrichtigungen haben die folgenden Eigenschaften:
- Standardmäßig maximiert
- Nicht minimierbar
Ihre Benachrichtigung muss die folgenden Anforderungen erfüllen, um als Live-Update zu gelten:
- Muss „Standard/Kein Stil“,
BigTextStyle
,CallStyle
oderProgressStyle
sein. - Die folgende Berechtigung, die nicht zur Laufzeit angefordert wird, muss im Android-Manifest angefordert werden:
android.permission.POST_PROMOTED_NOTIFICATIONS
. - Sie müssen die Promotion mit
EXTRA_REQUEST_PROMOTED_ONGOING
oderNotificationCompat.Builder#requestPromotedOngoing
anfordern. - Muss
ongoing
sein (FLAG_ONGOING_EVENT
festlegen). - Muss eine
contentTitle
enthalten. - Es darf KEINE
customContentView
festgelegt sein (keinRemoteViews
). - Darf NICHT die Zusammenfassung einer Gruppe mit
setGroupSummary
sein. - Darf NICHT
setColorized
aufTRUE
gesetzt werden. - Der Benachrichtigungskanal darf NICHT
IMPORTANCE_MIN
haben.
Merkmale von Promotions
Die folgenden APIs helfen Ihnen dabei, festzustellen, 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 Live-Updates 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
Verwenden Sie Live-Updates für Aktivitäten, die gerade laufen, vom Nutzer initiiert wurden und zeitkritisch sind.
Aktiv
Ein Live-Update muss eine Aktivität darstellen, die gerade läuft und einen eindeutigen Beginn und ein eindeutiges Ende hat. Wenn eine Aktivität in der Vergangenheit stattgefunden hat, sollten Sie kein Live-Update verwenden. Verwenden Sie stattdessen eine Standardbenachrichtigung. Das gilt auch für Veranstaltungen, die noch nicht begonnen haben. Bei Veranstaltungen, die bald beginnen, kann ein Live-Update verwendet werden.
Live-Updates stellen laufende Aktivitäten dar. Verwenden Sie keine Live-Updates, um beschleunigten Zugriff auf App-Funktionen zu ermöglichen. Wenn Sie das tun möchten, verwenden Sie ein App-Widget oder eine benutzerdefinierte Schnelleinstellung.
- Geeignete Verwendungszwecke:Aktive Navigation, laufende Telefonanrufe, aktives Tracking von Mitfahrgelegenheiten und aktives Tracking von Essenslieferungen.
- Unangemessene Verwendungen:Werbung, Werbeaktionen, Chatnachrichten, Benachrichtigungen, bevorstehende Kalenderereignisse und Schnellzugriff auf App-Funktionen.
Von Nutzern initiiert
Die meisten Live-Updates sollten Aktivitäten darstellen, die explizit vom Nutzer ausgelöst werden, z. B. das Starten eines Trainings, das Starten der Navigation oder das Bestellen eines Fahrdienstes. Zeigen Sie in einem Live-Update keine Umgebungsinformationen an, z. B. Informationen zur Umgebung des Nutzers, zu seinen Interessen oder zu anstehenden Terminen. Aktivitäten, die von anderen Parteien ausgelöst werden, dürfen keine Live-Updates generieren.
Manchmal führt ein Nutzer eine Aktion aus, die eine Aktivität für die Zukunft initiiert. Das ist beispielsweise der Fall, wenn der Nutzer Tickets für einen Flug oder ein Konzert kauft, sich für ein Turnier anmeldet oder anderweitig seine zukünftige Teilnahme an einem zeitkritischen Ereignis angibt. In diesen Fällen kann es sinnvoll sein, automatisch ein Live-Update anzuzeigen, wenn die geplante Veranstaltung beginnt. Apps müssen ihre Trigger jedoch so abstimmen, dass sie nur angezeigt werden, wenn die Aktivität unmittelbar bevorsteht. Wenn der Nutzer explizit angibt, dass er ein Hintergrundereignis wie ein Sportspiel beobachten möchte, können Sie mit dem Posten von Live-Updates für dieses Ereignis beginnen. Sie sollten jedoch auch die Aktion Unpin in die zugehörige Benachrichtigung aufnehmen.
Zeitkritisch
Zeigen Sie eine Live-Aktualisierung nur an, wenn sie während der gesamten Aktivität die Aufmerksamkeit des Nutzers erfordert. Ein wichtiger Anwendungsfall für Live-Updates ist die Überwachung, bei der der Nutzer einen erheblichen Vorteil daraus zieht, sich das Live-Update anzusehen, um den sich entwickelnden Status der Aktivität im Blick zu behalten.
Ein Live-Update ist oft für Aktivitäten geeignet, die zwischen Live-Updates und normalen Benachrichtigungen wechseln. Eine Benachrichtigung mit einer Bordkarte ist beispielsweise viele Stunden vor dem Flug eines Nutzers angemessen. Sie sollte jedoch erst dann zu einem Live-Update werden, wenn der Nutzer ein dringendes Bedürfnis hat, z. B. wenn er am Flughafen oder Veranstaltungsort angekommen ist oder das Boarding begonnen hat. Ein Live-Update ist dagegen nicht geeignet, um ein Paket zu verfolgen, da der Nutzer dies nicht ständig im Blick behalten muss.
Status-Chips
Mit Status-Chips können Nutzer Live-Updates im Blick behalten, wenn die Benachrichtigung nicht angezeigt wird. Verwenden Sie setShortCriticalText
oder setWhen
, um wichtige Statusinformationen zu Ihrer fortschrittsorientierten Benachrichtigung zu übermitteln.

Notification.Builder#setSmallIcon

Notification.Builder#setShortCriticalText
, um die absolute Zeit anzuzeigen.
Notification.Builder#setShortCriticalText
, um wichtige Informationen zu vermitteln.Wann
Die „when“-Zeit löst einen Countdown für die Lebensdauer der Benachrichtigung aus, sofern die Benachrichtigung nicht geschlossen oder aktualisiert wird.
- Die Uhrzeit liegt mindestens 2 Minuten in der Zukunft: Wenn die aktuelle Uhrzeit 10:05 Uhr ist und die Uhrzeit auf 10:10 Uhr festgelegt ist, wird auf dem Chip „5 Min.“ angezeigt.
- Wenn die Zeit mehr als eine Minute in der Vergangenheit liegt, wird die Benachrichtigung nicht angezeigt.
- Verwenden Sie
setShowWhen
fürFALSE
, wenn die Benachrichtigung im Benachrichtigungsfeld keine Zeitangabe enthalten soll.
Darstellung des Status-Chips
Der Status-Chip enthält immer ein Symbol und optional Text. Der Chip hat eine maximale Breite von 96 dp. Zeigen Sie den Text anhand der folgenden Kriterien an:
- Wenn der Text weniger als 7 Zeichen lang ist, wird der gesamte Text angezeigt.
- Wenn weniger als die Hälfte des Texts angezeigt wird, zeigen Sie nur das Symbol an.
- Wenn mehr als die Hälfte des Texts angezeigt wird, zeigen Sie so viel Text wie möglich an.
Dismissal
Nutzer können die Sichtbarkeit von Benachrichtigungen im Benachrichtigungsfeld steuern. Wenn Sie unerwünschte Live-Updates posten, kann es passieren, dass Nutzer die Berechtigung zum Posten für eine App widerrufen.
Wenn Sie verhindern möchten, dass Nutzer Livemeldungen vollständig deaktivieren, sollten Sie keine Updates posten, die Nutzer möglicherweise schließen. Posten Sie keine Livemeldungen noch einmal, die der Nutzer geschlossen hat. Verwenden Sie setDeleteIntent
, um verworfene Updates zu erkennen.