Benachrichtigungen

Eine Benachrichtigung ist eine Nachricht, die Android außerhalb der Benutzeroberfläche Ihrer App anzeigt, um den Nutzer an etwas zu erinnern, ihm Nachrichten von anderen Personen zu senden oder ihm andere aktuelle Informationen aus Ihrer App zu liefern. Nutzer können auf die Benachrichtigung tippen, um Ihre App zu öffnen oder eine Aktion direkt über die Benachrichtigung auszuführen.

Auf dieser Seite finden Sie eine Übersicht darüber, wo Benachrichtigungen angezeigt werden und welche Funktionen verfügbar sind.

Implementierungsleitfäden

In den folgenden Anleitungen erfahren Sie, wie Sie verschiedene Benachrichtigungsfunktionen in Ihrer App implementieren:

Weitere Informationen zum Design von Benachrichtigungen und zu Interaktionsmustern findest du im Designleitfaden für Benachrichtigungen.

Darstellung auf einem Gerät

Benachrichtigungen werden Nutzern automatisch an verschiedenen Orten und in verschiedenen Formaten angezeigt. Eine Benachrichtigung wird als Symbol in der Statusleiste, als detaillierterer Eintrag in der Benachrichtigungsleiste und als Badge auf dem App-Symbol angezeigt.

Geräteübergreifendes Verhalten

Benachrichtigungen werden standardmäßig auch auf gekoppelten Wearables angezeigt. In Szenarien, in denen der Benachrichtigungsinhalt nur für das Quellgerät relevant ist, verwende setLocalOnly(). Ein Beispiel ist eine Benachrichtigung, die bestätigt, dass ein Mediendownload abgeschlossen wurde. Weitere Informationen zu Wear OS-Benachrichtigungen findest du im Leitfaden zu Wear OS-Benachrichtigungen.

Statusleiste und Benachrichtigungsleiste

Wenn du eine Benachrichtigung ausgibst, wird sie zuerst als Symbol in der Statusleiste angezeigt.

Abbildung 1. Benachrichtigungssymbole werden auf der linken Seite der Statusleiste angezeigt.

Nutzer können auf der Statusleiste nach unten wischen, um die Benachrichtigungsleiste zu öffnen. Dort können sie weitere Details aufrufen und Aktionen für die Benachrichtigung ausführen.

Abbildung 2. Benachrichtigungen in der Benachrichtigungsleiste

Nutzer können eine Benachrichtigung in der Benachrichtigungsleiste nach unten ziehen, um die maximierte Ansicht aufzurufen. Dort werden zusätzliche Inhalte und Aktionsbuttons angezeigt, sofern vorhanden. Ab Android 13 enthält diese maximierte Ansicht eine Schaltfläche, mit der Nutzer eine App mit laufenden Diensten im Vordergrund beenden können.

Eine Benachrichtigung bleibt so lange in der Benachrichtigungsleiste sichtbar, bis sie von der App oder dem Nutzer geschlossen wird.

Vorabbenachrichtigung

Ab Android 5.0 können Benachrichtigungen kurz in einem schwebenden Fenster angezeigt werden, das als wichtige Benachrichtigung bezeichnet wird. Dieses Verhalten ist normalerweise für wichtige Benachrichtigungen gedacht, über die der Nutzer sofort informiert werden muss. Es wird nur angezeigt, wenn das Gerät entsperrt ist.

Abbildung 3. Eine wichtige Benachrichtigung wird vor der App im Vordergrund angezeigt.

Die wichtige Benachrichtigung wird angezeigt, wenn Ihre App die Benachrichtigung ausgibt. Sie verschwindet nach einem Moment, bleibt aber wie gewohnt in der Benachrichtigungsleiste sichtbar.

Zu den Bedingungen, die wichtige Benachrichtigungen auslösen können, gehören:

  • Die Aktivität des Nutzers befindet sich im Vollbildmodus, z. B. wenn die App fullScreenIntent verwendet.

  • Die Benachrichtigung hat eine hohe Priorität und verwendet Klingeltöne oder Vibrationen auf Geräten mit Android 7.1 (API-Level 25) und niedriger.

  • Der Benachrichtigungskanal hat auf Geräten mit Android 8.0 (API-Level 26) und höher eine hohe Bedeutung.

Sperrbildschirm

Ab Android 5.0 können Benachrichtigungen auf dem Sperrbildschirm angezeigt werden.

Du kannst programmatisch festlegen, ob von deiner App gepostete Benachrichtigungen auf einem sicheren Sperrbildschirm angezeigt werden sollen und, falls ja, wie detailliert sie sein sollen.

Nutzer können in den Systemeinstellungen festlegen, wie detailliert Benachrichtigungen auf dem Sperrbildschirm angezeigt werden sollen, oder alle Benachrichtigungen auf dem Sperrbildschirm deaktivieren. Ab Android 8.0 können Nutzer Benachrichtigungen auf dem Sperrbildschirm für jeden Benachrichtigungskanal deaktivieren oder aktivieren.

Abbildung 4. Benachrichtigungen auf dem Sperrbildschirm, bei denen sensible Inhalte ausgeblendet sind.

Weitere Informationen finden Sie unter Sichtbarkeit auf dem Sperrbildschirm festlegen.

Kennzeichen auf App-Symbolen

In unterstützten Launchern auf Geräten mit Android 8.0 (API-Level 26) und höher weisen App-Symbole mit einem farbigen Badge, dem sogenannten Benachrichtigungspunkt, auf dem entsprechenden App-Launcher-Symbol auf neue Benachrichtigungen hin.

Nutzer können ein App-Symbol berühren und halten, um die Benachrichtigungen für diese App aufzurufen. Sie können Benachrichtigungen über dieses Menü schließen oder darauf reagieren, ähnlich wie in der Benachrichtigungsleiste.

Abbildung 5. Benachrichtigungssymbole und das Menü, das durch Berühren und Halten aufgerufen wird.

Weitere Informationen zur Funktionsweise von Badges finden Sie unter Benachrichtigungs-Badge ändern.

Wear OS-Geräte

Wenn der Nutzer ein gekoppeltes Wear OS-Gerät hat, werden alle deine Benachrichtigungen automatisch dort angezeigt, einschließlich maximierbarer Details und Aktionsschaltflächen.

Du kannst die Nutzerfreundlichkeit verbessern, indem du das Erscheinungsbild deiner Benachrichtigungen auf Wearables anpasst und verschiedene Aktionen anbietest, darunter Antwortvorschläge und Antworten per Spracheingabe. Weitere Informationen finden Sie unter Wearable-spezifische Funktionen zu Benachrichtigungen hinzufügen.

Abbildung 6. Benachrichtigungen werden automatisch auf einem gekoppelten Wear OS-Gerät angezeigt.

Benachrichtigungsaufbau

Das Design einer Benachrichtigung wird durch Systemvorlagen bestimmt. In Ihrer App wird der Inhalt für jeden Teil der Vorlage definiert. Einige Details der Benachrichtigung werden nur in der maximierten Ansicht angezeigt.

Abbildung 7. Eine Benachrichtigung mit grundlegenden Details.

Die häufigsten Teile einer Benachrichtigung sind in Abbildung 7 dargestellt:

  1. Kleines Symbol: erforderlich; wird mit setSmallIcon() festgelegt.
  2. App-Name: vom System bereitgestellt.
  3. Zeitstempel: Wird vom System bereitgestellt, kann aber mit setWhen() überschrieben oder mit setShowWhen(false) ausgeblendet werden.
  4. Großes Symbol: optional; wird normalerweise nur für Kontaktfotos verwendet. Verwenden Sie es nicht für Ihr App-Symbol. Wird mit setLargeIcon() festgelegt.
  5. Titel: optional; wird mit setContentTitle() festgelegt.
  6. Text: optional; wird mit setContentText() festgelegt.

Wir empfehlen dringend, Systemvorlagen zu verwenden, um eine korrekte Designkompatibilität auf allen Geräten zu gewährleisten. Bei Bedarf können Sie ein benutzerdefiniertes Benachrichtigungslayout erstellen.

Weitere Informationen zum Erstellen einer Benachrichtigung mit diesen und weiteren Funktionen finden Sie unter Benachrichtigung erstellen.

Benachrichtigungsaktionen

Es ist zwar nicht erforderlich, aber es empfiehlt sich, dass jede Benachrichtigung beim Antippen eine entsprechende App-Aktivität öffnet. Zusätzlich zu dieser Standardaktion für Benachrichtigungen können Sie Aktionsbuttons hinzufügen, mit denen eine app-bezogene Aufgabe über die Benachrichtigung ausgeführt wird – oft ohne eine Aktivität zu öffnen –, wie in Abbildung 8 dargestellt.

Abbildung 8. Eine Benachrichtigung mit Aktionsbuttons.

Ab Android 7.0 (API-Level 24) können Sie eine Aktion hinzufügen, um direkt über die Benachrichtigung auf Nachrichten zu antworten oder anderen Text einzugeben.

Ab Android 10 (API-Level 29) kann die Plattform automatisch Aktionsschaltflächen mit vorgeschlagenen Intent-basierten Aktionen generieren.

Das Hinzufügen von Aktionsschaltflächen wird unter Benachrichtigung erstellen näher erläutert.

Entsperrtes Gerät erforderlich

Nutzer sehen möglicherweise Benachrichtigungsaktionen auf dem Sperrbildschirm des Geräts. Wenn eine Benachrichtigungsaktion dazu führt, dass eine App eine Aktivität startet oder eine Direktantwort sendet, müssen Nutzer das Gerät entsperren, bevor die App diese Benachrichtigungsaktion aufrufen kann.

Unter Android 12 (API-Level 31) und höher können Sie eine Benachrichtigungsaktion so konfigurieren, dass das Gerät entsperrt sein muss, damit Ihre App diese Aktion aufrufen kann, unabhängig davon, welchen Workflow die Aktion startet. Diese Option bietet eine zusätzliche Sicherheitsebene für Benachrichtigungen auf gesperrten Geräten.

Wenn Sie festlegen möchten, dass ein Gerät entsperrt werden muss, bevor Ihre App eine bestimmte Benachrichtigungsaktion aufruft, übergeben Sie beim Erstellen der Benachrichtigungsaktion true an setAuthenticationRequired(), wie im folgenden Code-Snippet gezeigt:

val intent = Intent(
    context, null
    /** Replace with a valid target activity */
)
val moreSecureNotification = NotificationCompat.Action.Builder(
    0, "Reply",
    PendingIntentCompat.getActivity(context, 0, intent, PendingIntent.FLAG_NO_CREATE, false)
)
    // This notification always requests authentication when invoked
    // from a lock screen.
    .setAuthenticationRequired(true)
    .build()

Maximierbare Benachrichtigung

Der Textinhalt einer Benachrichtigung wird standardmäßig auf eine Zeile gekürzt. Wenn Sie möchten, dass Ihre Benachrichtigung länger ist, können Sie einen größeren Textbereich aktivieren, der sich durch Anwenden einer zusätzlichen Vorlage erweitern lässt (siehe Abbildung 9).

Abbildung 9. Eine maximierbare Benachrichtigung für langen Text.

Du kannst auch eine maximierbare Benachrichtigung mit einem Bild, im Posteingangsstil, mit einer Chatunterhaltung oder mit Steuerelementen für die Medienwiedergabe erstellen. Weitere Informationen finden Sie unter Maximierbare Benachrichtigung erstellen.

Benachrichtigungsaktualisierungen und -gruppen

Wenn du zusätzliche Updates hast, solltest du eine vorhandene Benachrichtigung aktualisieren, anstatt eine neue zu senden, oder die Benachrichtigung im Posteingangsstil verwenden, um Updates zu Unterhaltungen anzuzeigen. So vermeidest du, dass deine Nutzer mit mehreren oder redundanten Benachrichtigungen überhäuft werden.

Wenn es jedoch erforderlich ist, mehrere Benachrichtigungen zu senden, solltest du die separaten Benachrichtigungen in einer Gruppe zusammenfassen. Diese Funktion ist ab Android 7.0 verfügbar.

Mit einer Benachrichtigungsgruppe kannst du mehrere Benachrichtigungen in einem Beitrag in der Benachrichtigungsleiste mit einer Zusammenfassung minimieren. Der Nutzer kann die Benachrichtigungsgruppe und jede darin enthaltene Benachrichtigung schrittweise maximieren, um weitere Details zu sehen (siehe Abbildung 10).

Abbildung 10. Eine minimierte und eine maximierte Benachrichtigungsgruppe.

Informationen zum Hinzufügen von Benachrichtigungen zu einer Gruppe finden Sie unter Benachrichtigungsgruppe erstellen.

Benachrichtigungskanäle

Ab Android 8.0 (API-Level 26) müssen alle Benachrichtigungen einem Kanal zugewiesen werden, da sie sonst nicht angezeigt werden. So können Nutzer bestimmte Benachrichtigungskanäle für Ihre App deaktivieren, anstatt alle Benachrichtigungen zu deaktivieren. Nutzer können die visuellen und akustischen Optionen für jeden Kanal in den Android-Systemeinstellungen steuern, wie in Abbildung 11 dargestellt. Nutzer können eine Benachrichtigung auch berühren und halten, um das Verhalten für den zugehörigen Kanal zu ändern.

Auf Geräten mit Android 7.1 (API-Level 25) und niedriger können Nutzer Benachrichtigungen nur pro App verwalten. Unter Android 7.1 und niedriger hat jede App effektiv nur einen Kanal.

Abbildung 11. Benachrichtigungseinstellungen für die Uhr App und einen ihrer Kanäle.

Eine App kann für jeden Benachrichtigungstyp, den sie ausgibt, separate Kanäle haben. Eine App kann auch Benachrichtigungskanäle als Reaktion auf die Auswahl von Nutzern erstellen. Sie können beispielsweise separate Benachrichtigungskanäle für jede Unterhaltungsgruppe einrichten, die ein Nutzer in einer Messaging-App erstellt hat.

Im Kanal wird auch die Wichtigkeitsstufe für deine Benachrichtigungen unter Android 8.0 und höher festgelegt. Alle Benachrichtigungen, die im selben Benachrichtigungskanal gepostet werden, verhalten sich also gleich. Dies wird im folgenden Abschnitt beschrieben.

Weitere Informationen finden Sie unter Benachrichtigungskanäle erstellen und verwalten.

Wichtigkeit von Benachrichtigungen

Android verwendet die Wichtigkeit einer Benachrichtigung, um zu bestimmen, wie stark die Benachrichtigung den Nutzer visuell und akustisch unterbricht. Je höher die Wichtigkeit einer Benachrichtigung, desto störender ist sie.

Unter Android 7.1 (API-Level 25) und niedriger wird die Wichtigkeit einer Benachrichtigung durch die priority der Benachrichtigung bestimmt.

Unter Android 8.0 (API-Level 26) und höher wird die Wichtigkeit einer Benachrichtigung durch die importance des Kanals bestimmt, in dem die Benachrichtigung gepostet wird. Nutzer können die Wichtigkeit eines Benachrichtigungskanals in den Systemeinstellungen ändern, wie in Abbildung 12 dargestellt.

Abbildung 12. Nutzer können die Wichtigkeit der einzelnen Kanäle unter Android 8.0 und höher ändern.

Die möglichen Wichtigkeitsstufen und die zugehörigen Benachrichtigungsverhalten sind:

  • Dringend: Es wird ein Ton abgespielt und die Benachrichtigung wird als wichtige Benachrichtigung angezeigt.

  • Hoch: Es wird ein Ton abgespielt.

  • Mittel: kein Geräusch

  • Niedrig: Es wird kein Ton abgespielt und die Benachrichtigung wird nicht in der Statusleiste angezeigt.

Alle Benachrichtigungen, unabhängig von ihrer Wichtigkeit, werden an nicht störenden Stellen der System-UI angezeigt, z. B. in der Benachrichtigungsleiste und als Badge auf dem Launcher-Symbol. Sie können jedoch das Erscheinungsbild des Benachrichtigungssymbols ändern.

Weitere Informationen finden Sie unter Wichtigkeit festlegen.

Modus "Bitte nicht stören"

Ab Android 5.0 (API-Level 21) können Nutzer den „Nicht stören“-Modus aktivieren, der Ton und Vibration für alle Benachrichtigungen stummschaltet. Benachrichtigungen werden weiterhin wie gewohnt in der System-UI angezeigt, sofern der Nutzer nichts anderes angibt.

Im „Bitte nicht stören“-Modus sind drei Stufen verfügbar:

  • Lautlos: Alle Töne und Vibrationen werden blockiert, auch die von Weckern, Musik, Videos und Spielen.
  • Nur Wecker: Akustische Signale und Vibrationen werden blockiert, mit Ausnahme von Weckern.
  • Nur wichtige: Nutzer können konfigurieren, welche systemweiten Kategorien sie unterbrechen dürfen, z. B. nur Wecker, Erinnerungen, Termine, Anrufe oder Nachrichten. Bei Nachrichten und Anrufen können Nutzer nach Absender oder Anrufer filtern, wie in Abbildung 13 dargestellt.
Abbildung 13. Nutzer können Benachrichtigungen basierend auf systemweiten Kategorien (links) und Absendern oder Anrufern (rechts) zulassen.

Unter Android 8.0 (API-Level 26) und höher können Nutzer außerdem Benachrichtigungen für app-spezifische Kategorien (auch als Kanäle bezeichnet) zulassen, indem sie „Bitte nicht stören“ für einzelne Kanäle deaktivieren. Eine Zahlungs-App kann beispielsweise Kanäle für Benachrichtigungen zu Abhebungen und Einzahlungen haben. Der Nutzer kann im Prioritätsmodus Benachrichtigungen zu Abhebungen, Einzahlungen oder beidem zulassen.

Auf Geräten mit Android 7.1 (API-Level 25) und niedriger können Nutzer Benachrichtigungen für einzelne Apps und nicht für einzelne Kanäle zulassen.

Wenn Sie Ihre Benachrichtigungen für diese Nutzereinstellungen konfigurieren möchten, müssen Sie eine systemweite Kategorie festlegen.

Benachrichtigungen für Vordergrunddienste

Eine Benachrichtigung ist erforderlich, wenn in Ihrer App ein Dienst im Vordergrund ausgeführt wird – ein im Hintergrund ausgeführter Service, der langlebig und für den Nutzer sichtbar ist, z. B. ein Mediaplayer. Diese Benachrichtigung kann nicht wie andere Benachrichtigungen geschlossen werden. Wenn Sie die Benachrichtigung entfernen möchten, muss der Dienst beendet oder aus dem Vordergrund entfernt werden.

Weitere Informationen finden Sie unter Dienste im Vordergrund. Wenn du einen Mediaplayer erstellst, lies auch den Artikel Medien im Hintergrund wiedergeben.

Benachrichtigungsverhalten

Android 16.0, API-Level 36

Benachrichtigungen werden jetzt im Namen der App automatisch gruppiert.

Die folgenden Benachrichtigungen werden automatisch gruppiert:

  • Benachrichtigungen ohne Zusammenfassung
  • Benachrichtigungen ohne untergeordnete Benachrichtigungen
  • Benachrichtigungen mit einer einzelnen oder einer geringen Anzahl von untergeordneten Benachrichtigungen

Android 15.0, API-Level 35

Lautstärke/Vibration verringern

Mit Android 15 wird die Funktion „Benachrichtigungen reduzieren“ eingeführt, die die Benachrichtigungen verbessern soll, die in schneller Folge eingehen. Mit dieser Funktion werden die Darstellung, die Lautstärke und die Vibrationsintensität wiederholter Benachrichtigungen bis zu zwei Minuten lang reduziert.

Wichtige Benachrichtigungen, die Audio und haptisches Feedback erfordern, um Aufmerksamkeit zu erregen, unterliegen nicht der Benachrichtigungspause. Der Nutzer kann die Benachrichtigungen reduzieren in den Einstellungen deaktivieren.

Abbildung 14. Die Einstellungen für „Benachrichtigungen reduzieren“.