Jetpack Compose unter Wear OS verwenden


Compose für Wear OS ähnelt Compose für mobile Geräte. Es gibt jedoch einige wichtige Unterschiede. In diesem Leitfaden werden die Ähnlichkeiten und Unterschiede beschrieben.

Compose for Wear OS ist Teil von Android Jetpack und hilft Ihnen wie die anderen Wear Jetpack-Bibliotheken, die Sie verwenden, schneller besseren Code zu schreiben. Dies ist der empfohlene Ansatz zum Erstellen von Benutzeroberflächen für Wear OS-Apps.

Wenn Sie mit dem Jetpack Compose-Toolkit nicht vertraut sind, sehen Sie sich den Compose-Lernpfad an. Viele der Entwicklungsprinzipien für mobiles Compose gelten auch für Compose für Wear OS. Weitere Informationen zu den allgemeinen Vorteilen eines deklarativen UI-Frameworks finden Sie unter Warum Compose?. Weitere Informationen zu Compose for Wear OS findest du im Compose for Wear OS Pathway und im Wear OS-Beispielrepository auf GitHub.

Material Design in Jetpack Compose unter Wear OS

Jetpack Compose für Wear OS bietet eine Implementierung von Material 3, mit dem Sie ansprechendere Apps entwickeln können. Die Material Design-Komponenten für Wear OS basieren auf Wear Material Theming. Mit dieser Thematisierung können Sie Material Design systematisch anpassen und die Marke Ihres Produkts besser widerspiegeln.

Kompatibilität

Compose für Wear OS funktioniert auf Smartwatches, die Wear OS 3.0 (API-Level 30) unterstützen, und auf Smartwatches mit Wear OS 2.0 (API-Level 25 und höher). Für die Verwendung von Version 1.5 von Compose for Wear OS ist die Verwendung von Version 1.8 der androidx.compose-Bibliotheken und Kotlin 1.9.0 erforderlich. Sie können die BOM-Zuordnung und die Compose-zu-Kotlin-Kompatibilitätsübersicht verwenden, um die Compose-Kompatibilität zu prüfen.

Plattformen

Compose für Wear OS erleichtert die Entwicklung von Apps für Wear OS. Weitere Informationen Mit unseren integrierten Komponenten können Sie Nutzererlebnisse schaffen, die den Wear OS-Richtlinien entsprechen. Weitere Informationen zu Komponenten finden Sie in unseren Designrichtlinien.

Wird eingerichtet

Die Verwendung von Jetpack Compose mit Wear OS ähnelt der Verwendung von Jetpack Compose für andere Android-Projekte. Der Hauptunterschied besteht darin, dass Jetpack Compose für Wear Wear-spezifische Bibliotheken hinzufügt, die das Erstellen von Benutzeroberflächen für Smartwatches erleichtern. In einigen Fällen haben diese Komponenten denselben Namen wie ihre Pendants für andere Geräte, z. B. androidx.wear.compose.material3.Button und androidx.compose.material3.Button.

Neue App in Android Studio erstellen

So erstellen Sie ein neues Projekt, das Jetpack Compose enthält:

  1. Wenn Sie sich im Fenster Welcome to Android Studio befinden, klicken Sie auf Start a new Android Studio project. Wenn Sie bereits ein Android Studio-Projekt geöffnet haben, wählen Sie in der Menüleiste File > New > Import Sample aus.
  2. Suchen Sie nach Compose for Wear und wählen Sie Compose for Wear OS Starter aus.
  3. Führen Sie im Fenster Projekt konfigurieren die folgenden Schritte aus:
    1. Legen Sie den Anwendungsnamen fest.
    2. Wählen Sie den Projektstandort für Ihr Sample aus.
  4. Klicken Sie auf Fertig.
  5. Prüfen Sie, ob die Datei build.gradle des Projekts richtig konfiguriert ist, wie unter Gradle-Eigenschaftsdateien beschrieben.

Jetzt können Sie mit der Entwicklung einer App mit Compose für Wear OS beginnen.

Abhängigkeiten des Jetpack Compose-Toolkits

Wenn Sie Jetpack Compose mit Wear OS verwenden möchten, müssen Sie die Abhängigkeiten des Jetpack Compose-Toolkits in die build.gradle-Datei Ihrer App einfügen. Die meisten Änderungen an Abhängigkeiten im Zusammenhang mit Wear OS betreffen die obersten Architekturschichten, die im folgenden Bild rot umrandet sind.

<img 'foundation',="" 'material',="" 'runtime'.="" 'ui',="" 2="" 4="" a="" alt="" and="" are="" bottom,="" box""="" by="" contain="" from="" rectangles="" rectangles.="" red="" src="/static/wear/images/components/ComposeDependencies.png" surrounded="" the="" to="" top="" />

Das bedeutet, dass sich viele der Abhängigkeiten, die Sie bereits mit Jetpack Compose verwenden, nicht ändern, wenn Sie auf Wear OS abzielen. Beispielsweise bleiben die UI-, Laufzeit-, Compiler- und Animationsabhängigkeiten gleich.

Wear OS hat jedoch eigene Versionen der Bibliotheken material und material3, foundation und navigation. Achten Sie also darauf, dass Sie die richtigen Bibliotheken verwenden.

Verwenden Sie nach Möglichkeit die Version WearComposeMaterial der APIs. Es ist zwar technisch möglich, die mobile Version von Compose Material zu verwenden, sie ist jedoch nicht für die besonderen Anforderungen von Wear OS optimiert. Außerdem kann die Kombination von Compose Material mit Compose Material für Wear OS zu unerwartetem Verhalten führen. Da jede Bibliothek eine eigene MaterialTheme-Klasse hat, kann es beispielsweise zu Inkonsistenzen bei Farben, Typografie oder Formen kommen, wenn beide Versionen verwendet werden.

In der folgenden Tabelle werden die Unterschiede bei den Abhängigkeiten zwischen Wear OS und Mobilgeräten beschrieben:

Wear OS-Abhängigkeit

(androidx.wear.*)

Vergleich Abhängigkeit von Mobilgeräten

(androidx.*)

androidx.wear.compose:compose-material3 statt androidx.compose.material:material3
androidx.wear.compose:compose-navigation statt androidx.navigation:navigation-compose
androidx.wear.compose:compose-foundation zusätzlich zu androidx.compose.foundation:foundation

Das folgende Snippet zeigt ein Beispiel für eine build.gradle-Datei, die diese Abhängigkeiten enthält:

Kotlin

dependencies {

    val composeBom = platform("androidx.compose:compose-bom:2025.05.00")

    // General compose dependencies
    implementation(composeBom)
    implementation("androidx.activity:activity-compose:1.10.1")
    implementation("androidx.compose.ui:ui-tooling-preview:1.8.3")
    // Other compose dependencies

    // Compose for Wear OS dependencies
    implementation("androidx.wear.compose:compose-material3:1.5.0-beta05")

    // Foundation is additive, so you can use the mobile version in your Wear OS app.
    implementation("androidx.wear.compose:compose-foundation:1.5.0-beta05")

    // Wear OS preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-beta05")

    // If you are using Compose Navigation, use the Wear OS version (NOT THE MOBILE VERSION).
    // Uncomment the line below and update the version number.
    // implementation("androidx.wear.compose:compose-navigation:1.5.0-beta05")

    // Testing
    testImplementation("junit:junit:4.13.2")
    androidTestImplementation("androidx.test.ext:junit:1.1.3")
    androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0")
    androidTestImplementation("androidx.compose.ui:ui-test-junit4:1.0.3")
    debugImplementation("androidx.compose.ui:ui-tooling:1.4.1")
    
}

Feedback

Probieren Sie Compose für Wear OS aus und nutzen Sie den Issue Tracker, um Vorschläge und Feedback zu geben.

Treten Sie dem #compose-wear-Kanal auf Kotlin Slack bei, um sich mit der Entwickler-Community auszutauschen und uns Ihre Erfahrungen mitzuteilen.