Mobilentwicklung: Android-UI-Toolkit Compose zielt jetzt auch auf Smartwatches

Compose for Wear OS ist mit Version 1.0 stabil. Parallel bringt das klassische Jetpack Compose 1.2 unter anderem eine API zum Herunterladen von Schriftarten.

In Pocket speichern vorlesen Druckansicht

(Bild: Google)

Lesezeit: 4 Min.

Google hat mit Compose for Wear OS 1.0 die erste stabile Variante des UI-Toolkits für das Smartwatch-Betriebssystem veröffentlicht. Damit gilt Compose als der empfohlene Weg, um User Interfaces für Wear-OS-Apps zu erstellen. Gleichzeitig ist Jetpack Compose für Smartphones, Tablets und Foldables in Version 1.2 erschienen.

Google hatte Jetpack Compose Ende Juli 2021 in der stabilen Version 1.0 veröffentlicht. Das UI-Toolkit für Android verfolgt einen deklarativen Ansatz und setzt auf die Programmiersprache Kotlin sowie ein reaktives Programmiermodell. Sogenannte Composable Functions definieren die einzelnen Bedienelemente – oder Teile davon. Mit @Composable dekorierte Funktionen lassen sich ineinander verschachteln, um letztlich die Oberfläche zu erzeugen. Der Code beschreibt das grundlegende Aussehen der Oberfläche, und unter der Haube kümmert sich das Toolkit um die Umsetzung in der Baumstruktur des UI und um das Aktualisieren der Inhalte.

Für die Wear-OS-Variante existieren laut dem Developer-Blog bereits zum Start von Version 1.0 mehr Komponenten als für View-basierte Layouts. Wie beim regulären Jetpack Compose setzen die Elemente auf die Richtlinien des von Google entwickelten Material Design. Außerdem implementieren sie Material Theming, um das Design der Oberfläche einheitlich zu gestalten und anzupassen.

Unter androidx.wear.compose.foundation finden sich Elemente, die auf unterschiedliche Formen wie runde oder quadratische Smartwatches zugeschnitten sind. Die APIs bringen mit CurvedLayout ein Layout, das die Elemente in einem Bogen anordnet und nach Bedarf rotiert. Dazu existieren kurvenförmige Elemente wie curvedRow und basicCurvedText. Die Interoperability APIs sollen ein nahtloses Zusammenspiel mit View-basierten User Interfaces ermöglichen. Die Composable-Elemente lassen sich direkt in vorhandene Oberflächen integrieren.

Google hat mit Horologist einige Libraries mit Komponenten für die Smartwatch wie einen Media-Player und einen DatePicker sowie Funktionen für die Audiosteuerung und Effekte wie das Ausblenden des Layouts freigegeben.

Die Uhrmacher-Libraries bringen zahlreiche Standardelemente für das UI-Design.

(Bild: Google)

Weitere Details zu WearOS 1.0 finden sich im Android-Developer-Blog. Ein Artikel auf dem Portal zum Entwickeln mit Android soll dabei helfen, die Performance von Compose-UI-Anwendungen auf der Smartwatch zu optimieren.

Jetpack Compose für Smartphones, Foldables und Tablets ist fast genau ein Jahr nach dem 1.0-Release in Version 1.2 erschienen. Zu den Neuerungen gehört das stabilisierte Grid-Layout, das sowohl in einer horizontalen (LazyHorizontalGrid) als auch in einer vertikalen Variante (LazyVerticalGrid) existiert. Das Lazy im Namen steht dafür, dass das Layout nur die benötigten, sichtbaren Spalten beziehungsweise Zeilen erstellt.

Für die Maussteuerung existieren zusätzliche Funktionen in Version 1.2, unter anderem um ein Hover-Icon zu definieren, das beim Überfahren des Elements mit der Maus angezeigt wird. Die neue Funktion Modifier.nestedScroll legt fest, wie Elemente in eine verschachtelte Scroll-Hierarchie eingebunden sind.

Noch als experimentell gekennzeichnet ist das Einbinden herunterladbarer Zeichensätze von Google Fonts. Außerdem gibt es Erweiterungen für scrollbare Layouts mit LazyLayout. Auch die APIs für das Testing bekommen neue experimentelle Funktionen wie performKeyInput für eine Tasteneingabe.

Weitere Neuerungen und Bug-Fixes finden sich im Android-Developer-Blog. Jetpack Compose 1.2 benötigt das aktuelle Kotlin 1.7. In der Jetpack-Dokumentation findet sich eine Kompatibilitätstabelle für die passenden Kotlin-Releases zu Compose. Compose for Wear OS 1.0 benötigt die androidx.compose-Libraries in Version 1.2 und damit ebenfalls Kotlin 1.7.

(rme)