錶面格式的天氣資料

從第 2 版開始,錶面格式支援天氣資料。 這項資料涵蓋目前條件的一系列指標和時間範圍 以及每小時和每日天氣預報

使用運算式存取天氣。例如,顯示目前 <Text> 元素中的天氣狀況,請使用類似以下的運算式: 包括:

<Text>
  <Font family="SYNC_TO_DEVICE" size="32">
    <Template>Today's weather: %s
        <Parameter expression="[WEATHER.CONDITION_NAME]"/>
    </Template>
  </Font>
</Text>

適用地區

錶面應一律先檢查 [WEATHER.IS_AVAILABLE] 值, 存取 [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>

此外,錶面應檢查 [WEATHER.IS_ERROR],這表示錶面會指出 載入天氣資料時發生錯誤。

請注意,[WEATHER.IS_AVAILABLE][WEATHER.IS_ERROR] 皆可為 true, ,且嘗試重新整理資料。此時 可顯示目前有空的天氣,並附帶一個指標以顯示當地 擷取新資料時發生錯誤。

資料更新間隔

您可以透過下列指令存取可用資料的時間戳記: [WEATHER.LAST_UPDATED] 是 Unix Epoch 紀元時間戳記,以毫秒為單位。

您可以使用 icuText(,) 方法設定這個值的格式,以取得 人類可讀的表示法,如天氣範例所示。

天候不佳

[WEATHER.CONDITION]」提供你目前的天氣資訊, 使用者容易理解的 [WEATHER.CONDITION_NAME] 版本。

[WEATHER.CONDITION]」的值會顯示在資料來源中。適用對象 例如 4 代表 HEAVY_RAIN

其他指標

錶面格式提供各種其他指標,例如 《[WEATHER.TEMPERATURE]》和《[WEATHER.UV_INDEX]》。詳情請參閱 包括單位和資料類型等可用指標,請前往 資料來源參考資料頁面。

每小時和每日天氣預報

您可以查看未來特定時段或日期的預測條件 如下所示:

  • [WEATHER.HOURS.1.CONDITION] - 預測條件為從現在起 1 小時後。
  • [WEATHER.DAYS.2.CONDITION] - 預測條件將在 2 天後開始。

每小時資料最多可提供 8 小時,每日資料最多可達 5 天 。不過,錶面應一律檢查是否可用 預測資料可提供不同的時段或天數範圍 不同的時間或裝置舉例來說 顯示 1 小時後的資料,請使用 [WEATHER.HOURS.1.IS_AVAILABLE]

每日和每小時預測功能還提供多種指標,例如 「[WEATHER.HOURS.<N>.TEMPERATURE]」和 [WEATHER.DAYS.<N>.CHANCE_OF_PRECIPITATION]。詳情請參閱 包括單位和資料類型等可用指標,請前往 資料來源參考資料頁面。

測試天氣資料

如要取得天氣資料,Wear OS 裝置必須存取裝置的位置資訊。

為了節省電力,手錶不會將內建 GPS 感應器用於 判斷天氣預報的所在地,並改以位置為依據 連接的手持裝置或可用網路。

如要測試位置資料,請執行下列其中一項操作:

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

更多詳細資料

如需存取及轉譯天氣資料的完整範例,請參閱 GitHub 範例