Kadran Biçimi, 2. sürümden itibaren hava durumu verilerini desteklemektedir. Bu veriler, mevcut koşullardan saatlik ve günlük tahminlere kadar çeşitli metrikleri ve zaman aralıklarını kapsar.
Hava durumuna ifadeler kullanılarak erişilir. Örneğin, <Text> öğesinde mevcut hava koşullarını göstermek için aşağıdakine benzer bir ifade kullanın:
<PartText x="100" y="100" width="200" height="50"> <Text> <Font family="SYNC_TO_DEVICE" size="16"> <Template><![CDATA[Today's weather: %s]]> <Parameter expression="[WEATHER.CONDITION_NAME]"/> </Template> </Font> </Text> </PartText>
Kullanılabilirlik
[WEATHER.*] nesnesinin diğer üyelerine erişmeden önce [WEATHER.IS_AVAILABLE] değerini kontrol edin:
<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>
Ayrıca, hava durumu verilerinin yüklenmesinde hata olduğunu gösteren [WEATHER.IS_ERROR] simgesini de kontrol etmeniz gerekir.
Verilerin eski olduğu ve verileri yenileme girişimlerinin başarısız olduğu durumlarda [WEATHER.IS_AVAILABLE] ve [WEATHER.IS_ERROR] değerlerinin ikisinin de doğru olabileceğini unutmayın. Bu tür durumlarda, yeni veriler alınırken hata oluştuğunu gösteren bir işaretle birlikte mevcut hava durumu gösterilebilir.
Verilerin güncelliği
Kullanılabilir verilerin zaman damgasına, milisaniye cinsinden bir Unix epoch zaman damgası olan [WEATHER.LAST_UPDATED] kullanılarak erişilebilir.
Bu değer, icuText(,) yöntemi kullanılarak biçimlendirilebilir. Böylece, hava durumu örneğinde gösterildiği gibi, okunabilir bir gösterim elde edilir.
Hava şartları
Mevcut koşullar [WEATHER.CONDITION] dilinde, insan tarafından okunabilir sürümü ise [WEATHER.CONDITION_NAME] dilinde sunulmaktadır.
[WEATHER.CONDITION] değerleri veri kaynaklarında görülebilir. Örneğin, 4, HEAVY_RAIN değerini temsil eder.
Diğer metrikler
Kadran Biçimi, [WEATHER.TEMPERATURE] ve [WEATHER.UV_INDEX] gibi çeşitli ek metrikler sağlar. Birimler ve veri türleri de dahil olmak üzere kullanılabilir metriklerle ilgili tüm ayrıntılar için veri kaynakları referans sayfasını ziyaret edin.
Saatlik ve günlük tahminler
Gelecekteki belirli bir saat veya güne ait hava durumu koşullarına aşağıdaki gibi erişebilirsiniz:
[WEATHER.HOURS.1.CONDITION]: 1 saat sonraki hava durumu tahmini.[WEATHER.DAYS.2.CONDITION]: 2 gün sonraki hava durumu koşulları.
Saatlik veriler 8 saat, günlük veriler ise 5 gün öncesinden kullanılabilir. Ancak kadran, tahmin verilerinin kullanılabilirliğini her zaman kontrol etmelidir. Farklı zamanlarda veya farklı cihazlarda farklı saat aralıkları ya da günler kullanılabilir. Örneğin, 1 saat sonraki öngörü verilerinin kullanılabilir olup olmadığını kontrol etmek için [WEATHER.HOURS.1.IS_AVAILABLE] kullanın.
Günlük ve saatlik tahminlerde de [WEATHER.HOURS.<N>.TEMPERATURE] ve [WEATHER.DAYS.<N>.CHANCE_OF_PRECIPITATION] gibi çeşitli metrikler yer alır. Birimler ve veri türleri de dahil olmak üzere kullanılabilir metriklerle ilgili tüm ayrıntılar için veri kaynakları referans sayfasını ziyaret edin.
Hava durumu verileriyle test etme
Hava durumu verilerini almak için Wear OS cihazının, cihaz konumunu bilmesi gerekir.
Güç tasarrufu için kol saati, hava durumu tahmininin konumunu belirlemek üzere yerleşik GPS sensörünü kullanmaz. Bunun yerine, bağlı bir elde taşınabilir cihazdan veya mevcut ağlardan alınan konumu kullanır.
Konum verilerini test için kullanılabilir hale getirmek üzere aşağıdakilerden birini yapın:
- Wear OS emülatörünüzü fiziksel bir telefonla veya emülatör telefonla eşleyin.
- Aşağıdaki adb komutuyla konumu simüle edin:
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
Daha fazla bilgi
Hava durumu verilerine erişme ve bunları oluşturma ile ilgili eksiksiz bir örnek için GitHub örneğine bakın.
Sizin için önerilenler
- Not: JavaScript kapalıyken bağlantı metni gösterilir.
- Odak davranışını değiştirme
- Compose'da yan etkiler
- AGSL Hızlı Referans