תצוגה מקדימה של כרטיסי מידע עם Wear OS ב-Android Studio

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

שמות הקבוצות בחלונית התצוגה המקדימה זהים לשם הקבוצה שצוין
    תצוגה מקדימה של הערה
חלונית התצוגה המקדימה של כרטיסי המידע ב-Android Studio.

הוספת יחסי תלות

צריך לכלול את יחסי התלות הבאים ב-build.gradle.kts של האפליקציה או קובץ build.gradle:

dependencies {
    implementation("androidx.wear.tiles:tiles-tooling-preview:1.4.0-rc01")
    debugImplementation("androidx.wear.tiles:tiles-tooling:1.4.0-rc01")
    implementation("androidx.wear:wear-tooling-preview:1.0.0")
}

הגדרת תצוגות מקדימות של משבצות

אפשר לראות תצוגה מקדימה של מראה המשבצת במסכים שונים של Wear OS מוסיפים את ההערה @Preview ומעבירים את הפרמטר device. הערה שהערת @Preview הזו היא מחבילה אחרת מזו לשימוש בתצוגות מקדימות קומפוזביליות.

import androidx.wear.tiles.tooling.preview.Preview

@Preview(device = WearDevices.SMALL_ROUND)
@Preview(device = WearDevices.LARGE_ROUND)
fun tilePreview(context: Context) = TilePreviewData(
    onTileRequest = { request ->
        TilePreviewHelper.singleTimelineEntryTileBuilder(
            buildMyTileLayout()
        ).build()
    }
)

הוספה ורישום של משאבים

אם כרטיס המידע משתמש במשאבים של Android, צריך לרשום אותם פרמטר onTileResourceRequest של TilePreviewData, כפי שמוצג את קטע הקוד הבא:

import androidx.wear.tiles.tooling.preview.Preview

@Preview(device = WearDevices.SMALL_ROUND)
fun previewWithResources(context: Context) = TilePreviewData(
    onTileResourceRequest = { request ->
        ProtoResources.Builder()
            .setVersion(myResourcesVersion)
            .addIdToImageMapping(
                    myImageId, getImageById(R.drawable.myDrawableImageId))
            .build()
    },
    onTileRequest = { request ->
        TilePreviewHelper.singleTimelineEntryTileBuilder(
            buildMyTileLayout()
        ).build()
    }
)

הצגת ערכים ספציפיים ממקורות נתונים של הפלטפורמה

אם המשבצת שלכם משתמשת בנתוני פלטפורמה כמו דופק, קלוריות, מרחק שלבים - האריח מציג את ערכי ברירת המחדל עבורם.

כדי להציג ערך ספציפי, צריך להגדיר את הפרמטר platformDataValues כשיוצרים את האובייקט TilePreviewData, כמו שמוצג בקטע הקוד הבא:

import androidx.wear.tiles.tooling.preview.Preview

@Preview(device = WearDevices.SMALL_ROUND)
fun previewWithPlatformOverride(context: Context) = TilePreviewData(
    platformDataValues = PlatformDataValues.of(
        PlatformHealthSources.Keys.HEART_RATE_BPM,
        DynamicDataBuilders.DynamicDataValue.fromFloat(160f)
    ),
    onTileRequest = { request ->
        TilePreviewHelper.singleTimelineEntryTileBuilder(
            buildMyTileLayout()
        ).build()
    }
)