Verbesserungen bei Android 12-Widgets

In Android 12 (API-Level 31) wurde die Widgets API überarbeitet, um die Nutzer- und Entwicklerfreundlichkeit der Plattform und Launcher zu verbessern. In diesem Leitfaden erfahren Sie, wie Sie dafür sorgen, dass Ihr Widget mit Android 12 kompatibel ist. Außerdem finden Sie hier eine Referenz für APIs zum Aktualisieren Ihres vorhandenen Widgets.

Alt-Text

Prüfen, ob Ihr Widget mit Android 12 kompatibel ist

Widgets in Android 12 haben abgerundete Ecken. Wenn ein App-Widget auf einem Gerät mit Android 12 oder höher verwendet wird, erkennt der Launcher automatisch den Hintergrund des Widgets und schneidet ihn so zu, dass er abgerundete Ecken hat.

In diesem Szenario wird Ihr Widget möglicherweise in keinem der folgenden Fälle richtig angezeigt:

  • Das Widget enthält Inhalte in den Ecken: Dies kann dazu führen, dass einige Inhalte im Eckbereich abgeschnitten werden.

  • Das Widget verwendet einen Hintergrund, der nicht zugeschnitten werden kann. Dazu gehören transparente Hintergründe, leere Ansichten oder Layouts oder andere Arten von speziellen Hintergründen, die nicht zugeschnitten werden können. Das System kann den zu verwendenden Hintergrund möglicherweise nicht richtig identifizieren.

Wenn Ihr Widget von dieser Änderung betroffen ist, empfehlen wir Ihnen, es mit abgerundeten Ecken zu aktualisieren (wie im folgenden Abschnitt beschrieben), damit es richtig angezeigt wird.

Beispiel verwenden

Alle diese APIs in Aktion sehen Sie in unserem Beispiellisten-Widget.

Abgerundete Ecken implementieren

In Android 12 wurden die Systemparameter system_app_widget_background_radius und system_app_widget_inner_radius eingeführt, mit denen Sie die Radien der abgerundeten Ecken Ihres Widgets festlegen können.

Wetter-Widget für Tokio
Abbildung 1: Abgerundete Ecken bei einem Widget und eine Ansicht im Widget

1 Ecke des Widgets.

2 Ecke einer Ansicht im Widget.

Weitere Informationen finden Sie unter Abgerundete Ecken implementieren.

Gerätethemen hinzufügen

Ab Android 12 können die Farben des Gerätedesigns für Schaltflächen, Hintergründe und andere Komponenten in einem Widget verwendet werden, einschließlich hellem und dunklem Design. So sind flüssigere Übergänge und Konsistenz zwischen verschiedenen Widgets möglich.

Weitere Informationen finden Sie unter Gerätethemen hinzufügen.

Widget im hellen Design
Abbildung 2: Widget im hellen Design
Widgets im dunklen Design
Abbildung 3: Widget im dunklen Design

Einfachere Personalisierung von Widgets

Wenn Sie eine Konfigurationsaktivität mit dem Attribut configure von appwidget-provider angeben, startet der App-Widget-Host diese Aktivität sofort, nachdem ein Nutzer das Widget auf seinem Startbildschirm hinzugefügt hat.

Android 12 bietet neue Optionen, mit denen Sie die Konfiguration für Nutzer verbessern können. Weitere Informationen finden Sie unter Nutzern erlauben, Widgets zu konfigurieren.

Neue zusammengesetzte Schaltflächen hinzufügen

Android 12 bietet eine neue Unterstützung für zustandsbezogenes Verhalten mit den folgenden vorhandenen Komponenten:

Das Widget ist weiterhin zustandslos. Ihre App muss den Status speichern und sich für Statusänderungsereignisse registrieren.

Abbildung 4: Beispiel für ein Widget mit Kästchen

Weitere Informationen finden Sie unter Unterstützung für zustandsabhängiges Verhalten.

Verbesserte APIs für Widgetgrößen und ‑Layouts verwenden

Ab Android 12 können Sie detailliertere Größenattribute und flexiblere Layouts nutzen, indem Sie zusätzliche Einschränkungen für die Größe von Widgets angeben und responsive und exakte Layouts bereitstellen.

Weitere Informationen finden Sie unter Flexible Widget-Layouts bereitstellen.

Widgetauswahl in Ihrer App verbessern

Mit Android 12 können Sie die Widgetauswahl für Ihre App verbessern, indem Sie dynamische Widgetvorschauen und Widgetbeschreibungen hinzufügen. Weitere Informationen finden Sie unter Der Auswahl für Widgets skalierbare Widget-Vorschauen hinzufügen und Eine Beschreibung für Ihr Widget hinzufügen.

Für flüssigere Übergänge sorgen

Ab Android 12 sorgen Launcher für einen reibungsloseren Übergang, wenn Nutzer Ihre App über ein Widget starten. Weitere Informationen finden Sie unter Weichere Übergänge aktivieren.

Vereinfachte RemoteViews-Sammlungen verwenden

Mit Android 12 wird die Methode setRemoteAdapter(int viewId, RemoteViews.RemoteCollectionItems items) hinzugefügt. Damit kann Ihre App eine Sammlung direkt übergeben, wenn eine ListView ausgefüllt wird. Bisher musste bei der Verwendung einer ListView eine RemoteViewsService implementiert und deklariert werden, um RemoteViewsFactory zurückzugeben.

Weitere Informationen finden Sie unter RemoteViews-Sammlungen verwenden.

Laufzeitänderung von RemoteViews verwenden

Android 12 bietet mehrere RemoteViews-Methoden, mit denen RemoteViews-Attribute zur Laufzeit geändert werden können. Eine vollständige Liste der hinzugefügten Methoden finden Sie in der RemoteViews API-Referenz.

Weitere Informationen finden Sie unter Laufzeitänderung von RemoteViews verwenden.