שימוש ב-Jetpack פיתוח נייטיב ב-Wear OS


קוד של Compose ותצוגה מקדימה של תצוגת השעון ב-Android Studio
איור 1. ‫Jetpack Compose ל-Wear OS

פיתוח נייטיב ל-Wear OS דומה לפיתוח נייטיב לנייד. עם זאת, יש כמה הבדלים חשובים. במדריך הזה נסביר על הדמיון וההבדלים ביניהם.

‫Compose ל-Wear OS הוא חלק מ-Android Jetpack, וכמו ספריות Wear Jetpack האחרות שאתם משתמשים בהן, הוא עוזר לכם לכתוב קוד טוב יותר מהר יותר. זו הגישה המומלצת שלנו ליצירת ממשקי משתמש לאפליקציות ל-Wear OS.

אם אתם לא מכירים את ערכת הכלים Jetpack Compose, כדאי לעיין במסלול הלמידה של Compose. הרבה מעקרונות הפיתוח של Compose לנייד רלוונטיים גם ל-Compose ל-Wear OS. במאמר למה כדאי להשתמש ב-Compose מפורט מידע נוסף על היתרונות הכלליים של מסגרת ממשק משתמש דקלרטיבית. מידע נוסף על Compose ל-Wear OS זמין במסלול Compose ל-Wear OS ובמאגר הדוגמאות של Wear OS ב-GitHub.

‫Material Design ב-Jetpack Compose ב-Wear OS

‫Jetpack Compose ב-Wear OS מציע הטמעה של Material 3, שעוזרת לעצב חוויות שימוש יותר מעניינות באפליקציה. רכיבי Material Design ב-Wear OS מבוססים על התאמת העיצוב של Google Material Design ב-Wear. העיצוב הזה הוא דרך שיטתית להתאים אישית את Material Design ולשקף טוב יותר את המותג של המוצר.

תאימות

‫Compose ל-Wear OS פועל בשעונים שתומכים ב-Wear OS 3.0 (רמת API‏ 30) ובשעונים שמשתמשים ב-Wear OS 2.0 (רמת API‏ 25 ומעלה). כדי להשתמש בגרסה 1.5 של Compose ל-Wear OS, צריך להשתמש בגרסה 1.8 של ספריות androidx.compose וב-Kotlin 1.9.0. כדי לבדוק את התאימות של Compose, אתם יכולים להשתמש במיפוי BOM ובמפת התאימות של Compose ל-Kotlin.

שכבות

פיתוח נייטיב ל-Wear OS מקל על פיתוח אפליקציות ב-Wear OS. מידע נוסף זמין במאמר אפליקציות. אתם יכולים להשתמש ברכיבים המובנים שלנו כדי ליצור חוויות משתמש שתואמות להנחיות של Wear OS. מידע נוסף על רכיבים זמין בהנחיות העיצוב שלנו.

בתהליך הגדרה

השימוש ב-Jetpack Compose עם Wear OS דומה לשימוש ב-Jetpack Compose בכל פרויקט Android אחר. ההבדל העיקרי הוא ש-Jetpack Compose ל-Wear מוסיף ספריות ספציפיות ל-Wear, שמאפשרות ליצור בקלות ממשקי משתמש שמותאמים לשעונים. במקרים מסוימים, לרכיבים האלה יש שם זהה לזה של הרכיבים המקבילים שלהם שלא מיועדים ל-Wear, כמו androidx.wear.compose.material3.Button וגם androidx.compose.material3.Button.

יצירת אפליקציה חדשה ב-Android Studio

כדי ליצור פרויקט חדש שכולל את Jetpack Compose, פועלים לפי השלבים הבאים:

  1. אם אתם נמצאים בחלון Welcome to Android Studio (ברוכים הבאים ל-Android Studio), לוחצים על Start a new Android Studio project (התחלת פרויקט חדש ב-Android Studio). אם כבר יש לכם פרויקט פתוח ב-Android Studio, בוחרים באפשרות File > ‏New > ‏Import Sample (קובץ > חדש > ייבוא דוגמה) מסרגל התפריטים.
  2. מחפשים את Compose for Wear ובוחרים באפשרות Compose for Wear OS Starter.
  3. בחלון Configure your project, מבצעים את הפעולות הבאות:
    1. מגדירים את שם האפליקציה.
    2. בוחרים את Project location לדוגמה.
  4. לוחצים על סיום.
  5. מוודאים שהקובץ build.gradle של הפרויקט מוגדר בצורה נכונה, כמו שמתואר במאמר קובצי מאפיינים של Gradle.

עכשיו אתם מוכנים להתחיל לפתח אפליקציה באמצעות Compose ל-Wear OS.

יחסי תלות של ערכת הכלים Jetpack Compose

כדי להשתמש ב-Jetpack Compose עם Wear OS, צריך לכלול את יחסי התלות של ערכת הכלים של Jetpack Compose בקובץ build.gradle של האפליקציה. רוב השינויים ביחסי התלות שקשורים ל-Wear OS נמצאים בשכבות הארכיטקטורה העליונות, שמוקפות בתיבה אדומה בתמונה הבאה.

‫4 מלבנים. מלמעלה למטה, המלבנים מכילים את המילים "Material",‏ "Foundation",‏ "UI" ו-"Runtime". שני המלבנים העליונים מוקפים בתיבה אדומה
איור 2. שינויים בתלויות של Wear OS בארכיטקטורה של Compose

זה אומר שהרבה מהתלויות שכבר השתמשתם בהן ב-Jetpack Compose לא משתנות כשמטרגטים ל-Wear OS. לדוגמה, ממשק המשתמש, סביבת זמן הריצה, המהדר והתלות באנימציה נשארים ללא שינוי.

עם זאת, ל-Wear OS יש גרסאות משלה לספריות material,‏ material3, ‏ foundation ו-navigation, אז חשוב לוודא שאתם משתמשים בספריות המתאימות.

מומלץ להשתמש בגרסת WearComposeMaterial של ממשקי ה-API כשאפשר. מבחינה טכנית, אפשר להשתמש בגרסה לנייד של Compose Material, אבל היא לא מותאמת לדרישות הייחודיות של Wear OS. בנוסף, שילוב של Compose Material עם Compose Material ל-Wear OS עלול לגרום להתנהגות לא צפויה. לדוגמה, מכיוון שלכל ספרייה יש מחלקת MaterialTheme משלה, יכול להיות שהצבעים, הטיפוגרפיה או הצורות לא יהיו עקביים אם משתמשים בשתי הגרסאות.

בטבלה הבאה מפורטים ההבדלים בתלויות בין Wear OS לבין מכשירים ניידים:

תלות ב-Wear OS
(androidx.wear.*)
השוואה תלות בנייד
(androidx.*)
androidx.wear.compose:compose-material3 במקום androidx.compose.material:material3
androidx.wear.compose:compose-navigation במקום androidx.navigation:navigation-compose
androidx.wear.compose:compose-foundation בנוסף androidx.compose.foundation:foundation

קטע הקוד הבא מציג קובץ build.gradle לדוגמה שכולל את יחסי התלות האלה:

Kotlin

dependencies {

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

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

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

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

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

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

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

}

משוב

נסו את Compose ל-Wear OS והשתמשו בIssue Tracker כדי לשלוח הצעות ומשוב.

הצטרפו לערוץ ‎#compose-wear ב-Kotlin Slack כדי להתחבר לקהילת המפתחים ולספר לנו על החוויה שלכם.