Korzystanie z Jetpack Compose na Wear OS


Tworzenie kodu i podglądu tarczy zegarka w Android Studio
Rysunek 1. Jetpack Compose na Wear OS

Compose na Wear OS jest podobny do Compose na urządzenia mobilne. Istnieją jednak pewne kluczowe różnice. W tym przewodniku omówimy podobieństwa i różnice.

Compose na Wear OS jest częścią Androida Jetpack i, podobnie jak inne biblioteki Wear Jetpack, pomaga szybciej pisać lepszy kod. Jest to zalecane przez nas podejście do tworzenia interfejsów użytkownika aplikacji na Wear OS.

Jeśli nie znasz zestawu narzędzi Jetpack Compose, zapoznaj się ze ścieżką Compose. Wiele zasad tworzenia aplikacji w Compose na urządzenia mobilne ma zastosowanie do Compose na Wear OS. Więcej informacji o ogólnych zaletach deklaratywnego frameworka interfejsu znajdziesz w artykule Dlaczego warto używać Compose. Więcej informacji o Compose na Wear OS znajdziesz w ścieżce Compose na Wear OS i w repozytorium przykładów Wear OS na GitHubie.

Material Design w Jetpack Compose na Wear OS

Jetpack Compose na Wear OS oferuje implementację Material 3, która pomaga projektować bardziej angażujące aplikacje . Komponenty Material Design na Wear OS są oparte na Wear Material Theming. Motywy te umożliwiają systematyczne dostosowywanie Material Design i lepsze odzwierciedlanie marki Twojego produktu.

Zgodność

Compose na Wear OS działa na zegarkach obsługujących Wear OS 3.0 (poziom API 30) i zegarkach z Wear OS 2.0 (poziom API 25 i wyższy). Korzystanie z Compose na Wear OS w wersji 1.5 wymaga używania bibliotek androidx.compose w wersji 1.8 i Kotlin 1.9.0. Aby sprawdzić zgodność Compose, możesz użyć mapowania BOM i mapy zgodności Compose z Kotlin do sprawdzenia zgodności Compose.

Platformy

Compose na Wear OS ułatwia tworzenie aplikacji na Wear OS. Więcej informacji znajdziesz w sekcji Aplikacje. Użyj naszych wbudowanych komponentów, aby tworzyć interfejsy użytkownika zgodne z wytycznymi Wear OS. Więcej informacji o komponentach znajdziesz w naszych wskazówkach dotyczących projektowania.

Konfiguruję aplikację

Korzystanie z Jetpack Compose na Wear OS jest podobne do korzystania z Jetpack Compose w dowolnym innym projekcie aplikacji na Androida. Główna różnica polega na tym, że Jetpack Compose na Wear OS dodaje biblioteki specyficzne dla Wear OS, które ułatwiają tworzenie interfejsów użytkownika dostosowanych do zegarków. W niektórych przypadkach komponenty te mają taką samą nazwę jak ich odpowiedniki na urządzenia inne niż Wear OS, np. androidx.wear.compose.material3.Button i androidx.compose.material3.Button.

Tworzenie nowej aplikacji w Android Studio

Aby utworzyć nowy projekt, który zawiera Jetpack Compose, wykonaj te czynności:

  1. Jeśli widzisz okno Witamy w Android Studio, kliknij Rozpocznij nowy projekt w Android Studio. Jeśli masz już otwarty projekt w Android Studio, na pasku menu kliknij Plik > Nowy > Importuj próbkę.
  2. Wyszukaj Compose for Wear i wybierz Compose for Wear OS Starter.
  3. W oknie Skonfiguruj projekt wykonaj te czynności:
    1. Ustaw Nazwę aplikacji.
    2. Wybierz Lokalizację projektu dla próbki.
  4. Kliknij Zakończ.
  5. Sprawdź, czy plik build.gradle projektu jest prawidłowo skonfigurowany, zgodnie z opisem w sekcji Pliki właściwości Gradle.

Możesz teraz zacząć tworzyć aplikację za pomocą Compose na Wear OS.

Zależności zestawu narzędzi Jetpack Compose

Aby używać Jetpack Compose na Wear OS, musisz uwzględnić zależności zestawu narzędzi Jetpack Compose w pliku build.gradle aplikacji. Większość zmian zależności związanych z Wear OS znajduje się w najwyższych warstwach architektury, otoczonych czerwonym polem na ilustracji poniżej.

4 prostokąty. Prostokąty od góry do dołu zawierają kolejno te słowa: „Material”, „Foundation”, „UI” i „Runtime”. Dwa górne prostokąty są otoczone czerwonym prostokątem.
Rysunek 2. Zmiany zależności na Wear OS w architekturze Compose

Oznacza to, że wiele zależności, których używasz już w Jetpack Compose, nie zmienia się, gdy kierujesz reklamy na Wear OS. Na przykład zależności interfejsu, środowiska wykonawczego, kompilatora i animacji pozostają takie same.

Wear OS ma jednak własne wersje bibliotek material i material3, foundation oraz navigation, dlatego sprawdź, czy używasz odpowiednich bibliotek.

Jeśli to możliwe, używaj WearComposeMaterial wersji interfejsów API. Chociaż technicznie można używać wersji mobilnej Compose Material, nie jest ona zoptymalizowana pod kątem unikalnych wymagań Wear OS. Ponadto mieszanie Compose Material z Compose Material na Wear OS może powodować nieoczekiwane działanie. Na przykład, ponieważ każda biblioteka ma własną klasę MaterialTheme, w przypadku używania obu wersji kolory, typografia lub kształty mogą być niespójne.

W tabeli poniżej przedstawiono różnice w zależnościach między Wear OS a urządzeniami mobilnymi:

Zależność Wear OS
(androidx.wear.*)
Porównanie Zależność na urządzenia mobilne
(androidx.*)
androidx.wear.compose:compose-material3 zamiast androidx.compose.material:material3
androidx.wear.compose:compose-navigation zamiast androidx.navigation:navigation-compose
androidx.wear.compose:compose-foundation oprócz androidx.compose.foundation:foundation

Poniższy fragment kodu przedstawia przykładowy plik build.gradle, który zawiera te zależności:

Kotlin

dependencies {

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

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

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

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

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

    // 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.6.2")

    // 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")

}

Prześlij opinię

Wypróbuj Compose na Wear OS i użyj narzędzia do śledzenia problemów, aby przesłać sugestie i opinie.

Dołącz do kanału#compose-wear na Kotlin Slack, aby nawiązać kontakt ze społecznością deweloperów i podzielić się swoimi wrażeniami.