Die Initiative „Personen und Unterhaltungen“ ist eine mehrjährige Android-Initiative, die darauf abzielt, Personen und Unterhaltungen auf den Systemoberflächen des Smartphones hervorzuheben. Diese Priorität ergibt sich daraus, dass Kommunikation und Interaktion mit anderen Menschen für die Mehrheit unserer Nutzer aus allen demografischen Gruppen nach wie vor der wichtigste Funktionsbereich ist.
In Android 11 wurden mehrere Funktionen eingeführt, die die Initiative „Personen und Unterhaltungen“ unterstützen.
Unterhaltungsbereich
Auf Mobilgeräten gibt es oben im Benachrichtigungs-Schieberegler einen separaten Bereich, der nur Unterhaltungen in Echtzeit mit Personen enthält, z. B. Anrufe und Chatnachrichten, einschließlich Gruppenchats. Benachrichtigungen in diesem Gruppenbereich sehen auf vielen Smartphones anders aus und funktionieren anders als Benachrichtigungen, die nicht zu einer Unterhaltung gehören:
- Das Design ist anders, wobei der Avatar, der Personen darstellt, und die App, die die Unterhaltung führt, im Mittelpunkt stehen.
- Wenn Sie auf die Benachrichtigung tippen, wird die Unterhaltung in der App geöffnet (oder die Bubble, wenn die Unterhaltung zuvor als Bubble angezeigt wurde). Wenn Sie auf das Dreipunkt-Menü tippen, werden die neuen Nachrichten im Bereich maximiert und die vollständige Liste der Optionen angezeigt.
- Es werden konversationsspezifische Aktionen angeboten (einige durch langes Drücken):
- Diese Unterhaltung als vorrangig markieren
- Diese Unterhaltung als Bubble anzeigen (nur angezeigt, wenn die App Bubbles unterstützt)
- Benachrichtigungen für diese Unterhaltung stummschalten
- Benutzerdefinierte Töne oder Vibrationen für diese Unterhaltung festlegen
Unterhaltungen in Bubbles
Ab Android 11 können Bubbles über Benachrichtigungen im Bereich „Unterhaltungen“ gestartet werden. Nur Benachrichtigungen mit einem verknüpften Kurzbefehl können als Bubbles angezeigt werden. Konversationen werden automatisch als Bubble angezeigt, wenn sie als wichtig markiert sind oder im Benachrichtigungs-Shade als Bubble angezeigt werden.
Tastenkürzel für Unterhaltungen
Verknüpfungen zu Unterhaltungen werden im Launcher und neben langlebigen Tastaturkürzeln zum Teilen im Sharesheet angezeigt.
API-Richtlinien
In diesem Abschnitt werden die APIs beschrieben, mit denen Sie in Ihrer App Unterstützung für den systemeigenen Bereich hinzufügen können, in dem Personen und Unterhaltungen angezeigt werden.
Tastenkürzel für Unterhaltungen
Damit Apps an dieser konversationsorientierten Initiative teilnehmen können, müssen sie dem System langlebige Tastenkombinationen zur Verfügung stellen. Wir empfehlen dringend, langlebige Verknüpfungen für die Freigabe zu verwenden. Unter Android 11 können Sie bei Bedarf dynamische Verknüpfungen verwenden. Diese Option wird jedoch möglicherweise in Zukunft entfernt.
Wenn Sie einen Verknüpfungs-Shortcut für die Unterhaltung veröffentlichen möchten, rufen Sie die Methoden ShortcutManagerCompat
setDynamicShortcuts()
, addDynamicShortcuts()
oder pushDynamicShortcut()
auf. Letztere verwaltet das Limit für Verknüpfungs-Shortcuts automatisch für den Entwickler. Diese Verknüpfung muss langlebig sein und für eine oder mehrere Personen Person
-Daten enthalten, anhand derer die anderen Teilnehmer an der Unterhaltung identifiziert werden können. Wir empfehlen außerdem, LocusIdCompat
festzulegen.
Wenn eine Unterhaltung nicht mehr vorhanden ist, kann die App den Verknüpfungs-Shortcut mit removeLongLivedShortcuts()
löschen. Dadurch werden alle mit der Unterhaltung verknüpften Daten vom System gelöscht.
Verknüpfungen können zwar entfernt werden, Apps sollten aber nur dann im Cache gespeicherte Verknüpfungen entfernen, wenn dies unbedingt erforderlich ist. Eine Verknüpfung wird wahrscheinlich im Cache gespeichert, weil der Nutzer damit interagiert hat, um die Nutzung zu ändern. Wenn Sie die Verknüpfung entfernen, werden diese Änderungen rückgängig gemacht, was zu Frustration bei den Nutzern führt.
Unterhaltungsbenachrichtigungen
Eine Benachrichtigung gilt als Unterhaltungsbenachrichtigung, wenn Folgendes zutrifft:
In der Benachrichtigung wird
MessagingStyle
verwendet.(Nur, wenn die App auf Android 11 oder höher ausgerichtet ist) Die Benachrichtigung ist mit einem gültigen dynamischen oder im Cache gespeicherten langlebigen Freigabe-Shortcut verknüpft. Die Benachrichtigung kann diese Verknüpfung durch Aufrufen von
setShortcutId()
odersetShortcutInfo()
herstellen. Wenn die App auf Android 10 oder niedriger ausgerichtet ist, muss die Benachrichtigung nicht mit einer Verknüpfung verknüpft sein, wie im Abschnitt Fallback-Optionen erläutert.Der Nutzer hat die Unterhaltung zum Zeitpunkt der Veröffentlichung nicht über die Einstellungen des Benachrichtigungskanals aus dem Unterhaltungsbereich entfernt.
LocusIdCompat verwenden
Anhand der On-Device-Intelligenz werden die Konversationen ermittelt, an denen der Nutzer am wahrscheinlichsten interessiert ist. Zu den wichtigsten Signalen gehören die Aktualität und die Häufigkeit der Unterhaltungssitzungen in jeder Unterhaltung. Das System erkennt Interaktionen mit einer Unterhaltung über Launcher-Verknüpfungen oder in einer Benachrichtigung, wenn sie richtig getaggt sind. Das System weiß jedoch nichts über Unterhaltungen, die vollständig in der App stattgefunden haben, es sei denn, diese Interaktionen sind ebenfalls getaggt. Wir empfehlen daher dringend, dem LocusIdCompat
einen LocusIdCompat
hinzuzufügen und die In-App-Aktivität oder das In-App-Fragment mit dem zugehörigen LocusIdCompat
zu versehen. Mit LocusIdCompat
können Sie das Vorschlagssystem so konfigurieren, dass die Unterhaltung richtig geranked und die letzte Interaktion des Nutzers (einschließlich In-App-Interaktionen) mit einer Unterhaltung korrekt angezeigt wird. Wenn Sie setShortcutInfo()
verwenden, um die Unterhaltung mit einem Verknüpfungssymbol zu verknüpfen, hängt das Unterhaltungssystem automatisch das entsprechende LocusIdCompat
an.
Anforderungen an Gruppenbereiche für Apps, die auf Android 10 oder niedriger ausgerichtet sind
Wenn eine App nicht auf Android 11 ausgerichtet ist, können ihre Nachrichten trotzdem im Unterhaltungsbereich angezeigt werden. Die App muss jedoch bestimmte Anforderungen erfüllen. In diesem Abschnitt werden die Anforderungen an diese Apps und das Fallback-Verhalten beschrieben, wenn die App die Anforderungen nicht erfüllt.
Die Hauptanforderung für die Teilnahme am Messaging-Bereich ist, dass die App MessagingStyle
-Benachrichtigungen implementieren muss. Die Benachrichtigungen müssen sich auf eine langlebige Tastenkombination aus der Benachrichtigung beziehen, die zum Zeitpunkt der Veröffentlichung der Benachrichtigung veröffentlicht wird. Benachrichtigungen, die diese Anforderungen erfüllen, werden im Unterhaltungsbereich mit folgendem Verhalten angezeigt:
- Die Benachrichtigung wird im Konversationsstil angezeigt.
- Schaltfläche Bubble wird angezeigt, sofern implementiert
- Gesprächsspezifische Funktionen werden inline angezeigt
Wenn die Benachrichtigung diese Anforderungen nicht erfüllt, verwendet die Plattform Fallback-Optionen, um die Benachrichtigung zu formatieren. Wenn eine Benachrichtigung die Anforderungen eines der beiden Fallback-Fälle erfüllt, wird sie im Konversationsbereich mit einer speziellen Formatierung angezeigt. Wenn die Benachrichtigung für keine der beiden Fallback-Optionen infrage kommt, wird sie im Konversationsbereich nicht angezeigt.
Fallback: Wenn „MessagingStyle“ verwendet wird, aber keine Tastenkombination angegeben ist
Wenn die App auf Android 10 oder niedriger ausgerichtet ist und in einer Benachrichtigung MessagingStyle
verwendet wird, die Nachricht aber nicht mit einer Verknüpfung verknüpft ist, wird die Benachrichtigung im Konversationsbereich mit folgendem Verhalten angezeigt:
- Die Benachrichtigung wird im Konversationsstil angezeigt.
- Es wird keine Blasenschaltfläche angezeigt.
- Keine unterhaltungsspezifischen Funktionen werden inline angeboten.
Fallback: Wenn MessagingStyle nicht verwendet wird, die App aber eine erkannte Messaging-App ist
Wenn für eine Benachrichtigung MessagingStyle
nicht verwendet wird, die App aber von der Plattform als Messaging-App erkannt wird und der Parameter category
der Benachrichtigung auf msg
festgelegt ist, wird die Benachrichtigung im Konversationsbereich mit folgendem Verhalten angezeigt:
- Die Benachrichtigung wird im alten Stil vor Android 11 angezeigt.
- Es wird keine Blasenschaltfläche angezeigt.
- Keine unterhaltungsspezifischen Funktionen werden inline angeboten.
Hinweise, Verwendung und Tests
In diesem Abschnitt finden Sie allgemeine Informationen zur Verwendung und zum Testen der Konversationsfunktionen.
Wann sollte ich Unterhaltungen verwenden?
Unterhaltungsbenachrichtigungen und zugehörige Tastenkürzel sollen die Nutzerfreundlichkeit von Unterhaltungen in Echtzeit verbessern. SMS, Textchats und Telefonanrufe sind beispielsweise Echtzeitunterhaltungen, bei denen Nutzer eine schnelle Kommunikation erwarten. Bei E-Mails und Aktivitäten, die nichts mit Unterhaltungen zu tun haben, ist das nicht der Fall.
Nutzer können eine Unterhaltung aus dem Unterhaltungsbereich entfernen, wenn sie der Meinung sind, dass sie nicht in den richtigen Gruppenbereich gehört.
Best Practices
Um die Interaktion zu steigern und es Nutzern zu erleichtern, mit anderen Nutzern und Unterhaltungen zu Ihrer App zu interagieren, empfehlen wir die folgenden Best Practices.
- Damit verpasste Anrufe im Bereich für priorisierte Unterhaltungen angezeigt und im Conversion-Widget korrekt dargestellt werden, formatieren Sie Benachrichtigungen zu verpassten Anrufen als
conversations
und legen Sie die Kategorie aufCATEGORY_MISSED_CALL
fest. - Stellen Sie Nutzern hochwertige Avatare (104 dp) zur Verfügung. Andernfalls verwendet das System die Initialen der Person, was weniger ansprechend ist.
- Senden Sie keine
cancel
-Unterhaltungsbenachrichtigung, bevor der Nutzer die Nachricht gesehen hat. Ein Beispiel hierfür ist das Abbrechen einer Benachrichtigung, wenn die App in einer Ansicht geöffnet wird, in der der Nutzer die Nachricht nicht sehen oder bearbeiten kann. Wenn der Nutzer nicht die Möglichkeit hat, die Nachricht zu lesen oder zu beantworten, werden eine abgebrochene Benachrichtigung und die zugehörige Bubble entfernt. Dadurch geht der Unterhaltungskontext verloren. - Geben Sie einen
data
-URI für MIME-bezogene Metadaten an, die mit Nachrichten verknüpft sind. So können Sie die Benachrichtigungen ansprechender gestalten. - Mit der
Android 12 status
API können Sie Unterhaltungs-Widgets ansprechender gestalten. - Beachten Sie die folgenden Best Practices für Verknüpfungen für Unterhaltungen.
- Tastenkombinationen für eingehende und ausgehende In-App-Unterhaltungen veröffentlichen, für die keine Push-Benachrichtigungen gesendet werden Eingehende und ausgehende Nachrichten für dieselbe Unterhaltung sollten dieselbe Kurzbefehls-ID haben. Verwenden Sie
pushDynamicShortcut()
, um Ihre Tastenkürzel zu veröffentlichen und die Nutzung zu melden. - Um ein unbeabsichtigtes Zuschneiden des Verknüpfungs-Avatars zu vermeiden, geben Sie für das Symbol der Verknüpfung einen
AdaptiveIconDrawable
an. Weitere Informationen finden Sie unter Bilder für Verknüpfungen bereitstellen. - Damit das System Ihren Shortcut bestmöglich präsentieren kann, folgen Sie den Richtlinien für das beste Ranking. Ihre Verknüpfung wird auf verschiedenen Systemoberflächen angezeigt, einschließlich des Android-Freigabebereichs, wenn es sich um eine Freigabeverknüpfung handelt.
- Achten Sie darauf, dass Tastenkombinationen zum Öffnen von Unterhaltungen
intents
direkt zur entsprechenden Unterhaltung führen. - Mit den kompatiblen Bibliotheken kannst du deine Tastenkürzel ganz einfach als
conversation
-bezogen festlegen.
- Tastenkombinationen für eingehende und ausgehende In-App-Unterhaltungen veröffentlichen, für die keine Push-Benachrichtigungen gesendet werden Eingehende und ausgehende Nachrichten für dieselbe Unterhaltung sollten dieselbe Kurzbefehls-ID haben. Verwenden Sie
Unterhaltungsbenachrichtigungen und Tastenkürzel testen
Wenn Sie die Richtlinien für Gruppenbereiche einhalten, sollten Unterhaltungen automatisch im Gruppenbereich angezeigt werden. Sie können prüfen, ob der Shortcut richtig eingebunden ist, indem Sie lange auf die Benachrichtigung drücken. Wenn die Integration korrekt durchgeführt wurde, werden auf der Benutzeroberfläche konversationsbezogene Aktionen angezeigt. Wenn die Benachrichtigung nicht mit einem Shortcut verknüpft ist, wird auf der Benutzeroberfläche angezeigt, dass die App keine Konversationsfunktionen unterstützt.
Hinzugefügte Verknüpfungen werden angezeigt, wenn Sie den App Launcher lange gedrückt halten. Prüfen Sie, ob Sie mit den Verknüpfungen zum richtigen Ort in Ihrer App gelangen.
Hinzugefügte Kurzbefehle zum Teilen werden in der Zeile „Direktes Teilen“ des Freigabebereichs angezeigt, wenn Sie Inhalte teilen, die Ihr Kurzbefehl zum Teilen empfangen kann.
Kommunikations-Widgets
In Android 12 baut die Funktion „Unterhaltungs-Widget“ auf der Funktion „Personen und Unterhaltungen“ auf, die in Android 11 eingeführt wurde. Apps können damit den Unterhaltungsstatus in Unterhaltungs-Widgets anzeigen.
Konversations-Widgets fördern die Nutzerinteraktion, da sie es ihnen ermöglichen, ganz einfach Chats auf dem Startbildschirm zu öffnen. Diese Widgets sind erweiterte Verknüpfungen, mit denen Nutzer schnell zu ihren Unterhaltungen zurückkehren können. Außerdem werden Snippets des Unterhaltungsstatus oder andere relevante Informationen angezeigt.
Prüfen, ob Ihre App Konversations-Widgets unterstützt
Um zu prüfen, ob Ihre App Konversations-Widgets unterstützt, benötigen Sie mindestens zwei Android-Geräte (beide mit Android 12) und zwei Nutzerkonten (jeweils eines auf jedem Gerät), um Nachrichten auszutauschen. Für diesen Vorgang nennen wir die Konten „Nutzer A“ und „Nutzer B“.
Führe dann die folgenden Schritte durch:
- Drücken Sie auf dem Gerät von Nutzer A lange auf den Launcher. Tippen Sie in der Widget-Auswahl auf ein neues Widget für eine Unterhaltung (siehe Abbildung 2).
- Ziehen Sie das Widget auf den Startbildschirm. Eine Liste der aktiven oder letzten Unterhaltungen aus der App von Nutzer A sollte auswählbar sein.
- Senden Sie jetzt auf dem Gerät von Nutzer B eine Testnachricht an Nutzer A.
- Prüfen Sie auf dem Gerät von Nutzer A, ob das Widget aktualisiert wurde, um die Benachrichtigung über die Nachricht von Nutzer B widerzuspiegeln.
- Optional: Legen Sie für Nutzer A und Nutzer B unterschiedliche Statuswerte für die Unterhaltung fest, damit sie in den Widgets korrekt angezeigt werden. Eine Liste der Statuswerte finden Sie unter ConversationStatus.