自第 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 感應器來確定天氣預報的位置,而是仰賴已連線手持裝置或可用網路的位置資訊。
如要測試位置資料,請執行下列其中一項操作:
- 將 Wear OS 模擬器與實體或模擬器手機配對。
- 使用下列 ADB 指令模擬位置:
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 範例。
為您推薦
- 注意:系統會在 JavaScript 關閉時顯示連結文字
- 變更焦點行為
- Compose 中的連帶效果
- AGSL 快速參考指引