Sejak versi 2, Format Tampilan Jam menyertakan dukungan untuk data cuaca. Data ini mencakup berbagai metrik dan jangka waktu, dari kondisi saat ini hingga prakiraan cuaca per jam dan harian.
Cuaca diakses menggunakan ekspresi. Misalnya, untuk menampilkan
kondisi cuaca dalam elemen <Text>
, gunakan ekspresi yang mirip dengan
hal berikut:
<Text>
<Font family="SYNC_TO_DEVICE" size="32">
<Template>Today's weather: %s
<Parameter expression="[WEATHER.CONDITION_NAME]"/>
</Template>
</Font>
</Text>
Ketersediaan
Tampilan jam harus selalu memeriksa nilai [WEATHER.IS_AVAILABLE]
sebelum
mengakses anggota lain dari objek [WEATHER.*]
:
<Condition>
<Expressions>
<Expression name="is_weather_available">[WEATHER.IS_AVAILABLE]</Expression>
</Expressions>
<Compare expression="is_weather_available">
<!-- Weather is available, so show the weather data. -->
</Compare>
<Default>
<!-- Weather isn't available, so show an appropriate message. -->
</Default>
</Condition>
Selain itu, tampilan jam harus memeriksa [WEATHER.IS_ERROR]
, yang menunjukkan
terjadi error saat
memuat data cuaca.
Perhatikan bahwa [WEATHER.IS_AVAILABLE]
dan [WEATHER.IS_ERROR]
dapat bernilai benar (true),
di mana data sudah basi dan upaya untuk menyegarkan data gagal. Dalam kasus tersebut,
cuaca yang tersedia dapat ditampilkan, beserta
indikator untuk menunjukkan bahwa ada
terjadi error saat mengambil data baru.
Keaktualan data
Stempel waktu dari data yang tersedia
dapat diakses menggunakan
[WEATHER.LAST_UPDATED]
yang merupakan stempel waktu Unix epoch dalam milidetik.
Nilai ini dapat diformat menggunakan metode icuText(,)
untuk mendapatkan
dan dapat dibaca manusia, seperti yang ditunjukkan dalam contoh cuaca.
Kondisi cuaca
Kondisi saat ini tersedia di [WEATHER.CONDITION]
, dengan
versi yang dapat dibaca manusia dalam [WEATHER.CONDITION_NAME]
.
Nilai untuk [WEATHER.CONDITION]
dapat dilihat dalam sumber data. Sebagai
contoh, 4
mewakili HEAVY_RAIN
.
Metrik lainnya
Format Tampilan Jam menyediakan berbagai metrik tambahan, seperti
[WEATHER.TEMPERATURE]
dan [WEATHER.UV_INDEX]
. Untuk detail selengkapnya
tentang metrik yang tersedia, termasuk unit dan jenis data, kunjungi
sumber data.
Prakiraan cuaca per jam dan harian
Anda dapat mengakses kondisi perkiraan untuk jam atau hari tertentu pada masa mendatang sebagai berikut:
[WEATHER.HOURS.1.CONDITION]
- kondisi perkiraan 1 jam dari sekarang.[WEATHER.DAYS.2.CONDITION]
- kondisi perkiraan 2 hari dari sekarang.
Data per jam dapat tersedia hingga 8 jam lebih awal, dan data harian hingga 5 hari
di depan. Namun, tampilan jam harus selalu memeriksa ketersediaan
data prakiraan cuaca. Rentang jam atau hari yang berbeda mungkin tersedia di
waktu atau perangkat yang berbeda. Misalnya, untuk memeriksa apakah perkiraan
data tersedia selama 1 jam dari sekarang, gunakan [WEATHER.HOURS.1.IS_AVAILABLE]
.
Prakiraan cuaca harian dan per jam juga menampilkan berbagai metrik, seperti
[WEATHER.HOURS.<N>.TEMPERATURE]
dan
[WEATHER.DAYS.<N>.CHANCE_OF_PRECIPITATION]
. Untuk detail selengkapnya
tentang metrik yang tersedia, termasuk unit dan jenis data, kunjungi
sumber data.
Menguji dengan data cuaca
Untuk mendapatkan data cuaca, perangkat Wear OS harus mengetahui lokasi perangkat.
Untuk menghemat daya, jam tidak menggunakan sensor GPS bawaan untuk menentukan lokasi untuk prakiraan cuaca, dan sebagai gantinya bergantung pada lokasi dari perangkat genggam yang terhubung atau dari jaringan yang tersedia.
Agar data lokasi tersedia untuk pengujian, lakukan salah satu hal berikut:
- Sambungkan emulator Wear OS dengan ponsel fisik atau emulator.
- Simulasikan lokasi melalui perintah adb berikut:
adb unroot
adb shell cmd location set-location-enabled true
adb root
adb shell appops set 0 android:mock_location allow
adb shell cmd location providers add-test-provider gps
adb shell cmd location providers set-test-provider-enabled gps true
adb shell cmd location providers set-test-provider-location gps --location 37.773972,-122.431297
Detail lebih lanjut
Untuk contoh lengkap tentang mengakses dan merender data cuaca, lihat Contoh GitHub.
Direkomendasikan untuk Anda
- Catatan: teks link ditampilkan saat JavaScript nonaktif
- Mengubah perilaku fokus
- Efek samping di Compose
- Referensi Cepat AGSL