معاينة مربّعات Wear OS في "استوديو Android"

بدءًا من Android Studio Studio Koala Feature Drop، يمكنك عرض لقطات من مربّعات تطبيق Wear OS تكون هذه اللوحة مفيدة بشكل خاص إذا كان شكل مربّع الشاشة يتغيّر استجابةً للظروف، مثل محتوى مختلف استنادًا إلى حجم شاشة الجهاز أو حدث رياضي يصل إلى وقت الاستراحة.

تطابق أسماء المجموعات في لوحة المعاينة مع اسم المجموعة الموضح في
    تعليق توضيحي لمعاينة
لوحة معاينة "شاشات المعلومات" في "استوديو Android"

إضافة التبعيات

أدرِج التبعيات التالية في ملف build.gradle.kts أو build.gradle في تطبيقك:

dependencies {
    implementation("androidx.wear.tiles:tiles-tooling-preview:1.4.0")
    debugImplementation("androidx.wear.tiles:tiles-tooling:1.4.0")
    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 ->
        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()

عرض قيم معيّنة من مصادر بيانات المنصة

إذا كان مربّعك يستخدم بيانات النظام الأساسي، مثل معدّل نبضات القلب والسعرات الحرارية والمسافة الخطوات - يعرض المربع القيم الافتراضية لها.

لعرض قيمة معيّنة، اضبط مَعلمة 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()
    }
)