从版本 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 纪元时间戳。
您可以使用 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 快速参考