Wear OS-Kacheln in Android Studio als Vorschau ansehen

Ab der Android Studio Koala-Funktionsveröffentlichung können Sie Snapshots der Kacheln Ihrer Wear OS-App aufrufen. Dieses Steuerfeld ist besonders nützlich, von Bedingungen abhängig, etwa unterschiedlicher Content je nach Displaygröße des Geräts oder bei einer Sportveranstaltung, die Halbzeit erreicht.

Die Gruppennamen im Vorschaubereich stimmen mit dem Gruppennamen in der Vorschauanmerkung überein.
Vorschaubereich für Kacheln in Android Studio

Abhängigkeiten hinzufügen

Fügen Sie der Datei build.gradle.kts oder build.gradle Ihrer App die folgenden Abhängigkeiten hinzu:

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

Kachelvorschau konfigurieren

Wenn Sie eine Vorschau des Erscheinungsbildes Ihrer Kachel auf verschiedenen Wear OS-Displaygrößen sehen möchten, fügen Sie die Anmerkung @Preview hinzu und geben Sie den Parameter device an. Hinweis: Diese @Preview-Anmerkung stammt aus einem anderen Paket als das, das Sie für zusammensetzbare Vorschauen verwenden.

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()
    }
)

Ressourcen hinzufügen und registrieren

Wenn Ihre Kachel Android-Ressourcen verwendet, müssen Sie sie im onTileResourceRequest-Parameter von TilePreviewData registrieren, wie im folgenden Code-Snippet gezeigt:

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

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

fun getImageById(
    @DrawableRes id: Int,
): ImageResource =
    ImageResource.Builder()
        .setAndroidResourceByResId(
            AndroidImageResourceByResId.Builder()
                .setResourceId(id)
                .build(),
        )
        .build()

Bestimmte Werte aus Plattformdatenquellen anzeigen

Wenn Ihre Kachel Plattformdaten verwendet – wie Herzfrequenz, Kalorien, Entfernung und Schritte – die Kachel zeigt Standardwerte für sie an.

Wenn ein bestimmter Wert angezeigt werden soll, legen Sie beim Erstellen den Parameter platformDataValues fest TilePreviewData, wie im folgenden Code-Snippet gezeigt:

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()
    }
)