数据源的值,用于更新表盘上显示的实时值。
此元素在 Wear OS 4 中推出。
信息来源 | 说明 | 类别 | 可用性 |
---|---|---|---|
UTC_TIMESTAMP |
自世界协调时间 (UTC) 1970 年 1 月 1 日午夜以来经过的毫秒数。 | 整数 | 版本 1 |
MILLISECOND |
一个整数值,表示当前时间的 ZonedDateTime
对象的毫秒字段。此值始终介于 0 和 999 之间(包括这两个数值)。
|
整数 | 版本 1 |
SECOND |
一个整数值,表示当前时间的 ZonedDateTime 对象的秒字段。此值始终介于 0 和 59 之间(包括这两个数值)。
|
整数 | 版本 1 |
SECOND_Z |
一个字符串,表示当前时间的 ZonedDateTime
对象的秒字段,其中包含前导零,以使值的长度为 2 个字符。此值始终介于 00 和 59 之间(包括这两个数值)。
|
字符串 | 版本 1 |
SECOND_TENS_DIGIT |
当前秒数的十位数,例如,对于 12:03:47,此值为 4 。
|
整数 | 版本 2 |
SECOND_UNITS_DIGIT |
当前秒数的单位数,例如,对于 12:03:47,7 。
|
整数 | 版本 2 |
SECOND_MILLISECOND |
一个浮点值,用于组合表示当前时间的 ZonedDateTime
对象的秒字段和毫秒字段。此值始终介于 0.0 和 59.999 之间(包括这两个数值)。
|
浮点数 | 版本 1 |
SECONDS_IN_DAY |
当前日期经过的秒数,基于 HOUR_0_23 、MINUTE 和 SECOND 的值。此值始终介于 0 和 86399 ($ 24 * 60 * 60 - 1 $) 之间(包括这两个数值)。
|
整数 | 版本 1 |
MINUTE |
一个整数值,表示当前时间的 ZonedDateTime 对象的分钟字段。此值始终介于 0 和 59 之间(包括这两个数值)。
|
整数 | 版本 1 |
MINUTE_Z |
一个字符串值,表示当前时间的 ZonedDateTime 对象的分钟字段,其中包含前导零,以使值的长度为 2 个字符。此值始终介于 00 和 59 之间(包括这两个数值)。
|
字符串 | 版本 1 |
MINUTE_TENS_DIGIT |
当前分钟的十位数,例如 12:03 中的 0 。
|
整数 | 版本 2 |
MINUTE_UNITS_DIGIT |
当前分钟的单位数,例如 12:03 中的 3 。
|
整数 | 版本 2 |
MINUTE_SECOND |
一个浮点值,用于组合表示当前时间的 ZonedDateTime
对象的分钟字段和秒字段。此值始终介于 0.0 和 $ 59 \frac{59}{60} $ 之间(包括这两个数值)。
|
浮点数 | 版本 1 |
HOUR_0_11 |
当前时间的 12 小时制组件,表示为一个介于 0 和 11 之间的值(包括这两个数值)。如果当前
CLOCK_HOUR_OF_AMPM 为 12 (如 12:34 PM 中),则此值将转换为 0 。
|
整数 | 版本 1 |
HOUR_0_11_Z |
一个字符串,用于表示当前时间的 12 小时制组件,介于 00 和 11 之间(包括这两个数值),并使用 Wear OS 设备的当前时区。如果此值小于 10 ,则此值包含前导零。
|
字符串 | 版本 1 |
HOUR_0_11_MINUTE |
一个浮点值,用于组合表示当前时间的 ZonedDateTime
对象的经过修改的 CLOCK_HOUR_OF_AMPM 字段和分钟字段。此值始终介于 0.0 和 $ 11 \frac{59}{60} $ 之间(包括这两个数值)。
|
浮点数 | 版本 1 |
HOUR_1_12 |
当前时间的 12 小时制组件,表示为一个介于 1 和 12 之间的值(包括这两个数值)。如果当前 HOUR_OF_DAY 为 0 (如 0:12 中,即凌晨 12:12),则此值将转换为 12 。
|
整数 | 版本 1 |
HOUR_1_12_Z |
一个字符串,用于表示当前时间的 12 小时制组件,介于 01 和 12 之间(包括这两个数值),并使用 Wear OS 设备的当前时区。如果此值小于 10 ,则此值包含前导零。
|
string | 版本 1 |
HOUR_1_12_MINUTE |
一个浮点值,用于组合表示当前时间的 ZonedDateTime
对象的 CLOCK_HOUR_OF_AMPM 字段和分钟字段。此值始终介于 1.0 和 $ 12 \frac{59}{60} $ 之间(包括这两个数值)。
|
浮点数 | 版本 1 |
HOUR_0_23 |
当前时间的 24 小时制组件,表示为一个介于 0 和 23 之间的值(包括这两个数值)。如果此值为 24 (如 24:13 ,即第二天凌晨 12:13),则此值将转换为 0 。
|
整数 | 版本 1 |
HOUR_0_23_Z |
一个字符串,用于表示当前时间的 24 小时制组件,介于 00 和 23 之间(包括这两个数值),并使用 Wear OS 设备的当前时区。如果此值小于 10 ,则此值包含前导零。
|
整数 | 版本 1 |
HOUR_0_23_MINUTE |
一个浮点值,用于组合表示当前时间的 ZonedDateTime
对象的小时字段和分钟字段。此值始终介于 0.0 和 $ 23 \frac{59}{60} $ 之间(包括这两个数值)。
|
浮点数 | 版本 1 |
HOUR_1_24 |
当前时间的 24 小时制组件,表示为一个介于 1 和 24 之间的值(包括这两个数值)。如果此值为 0 (如 0:12 ,即凌晨 12:12),则此值将转换为 24 。
|
整数 | 版本 1 |
HOUR_1_24_Z |
一个字符串,用于表示当前时间的 12 小时制组件,介于 01 和 24 之间(包括这两个数值),并使用 Wear OS 设备的当前时区。如果此值小于 10 ,则此值包含前导零。
|
字符串 | 版本 1 |
HOUR_1_24_MINUTE |
一个浮点值,用于组合表示当前时间的 ZonedDateTime
对象的经过修改的小时字段和分钟字段。此值始终介于 1.0 和 $ 24 \frac{59}{60} $ 之间(包括这两个数值)。
|
浮点数 | 版本 1 |
HOUR_TENS_DIGIT |
当前小时的十位数,例如 12:03 中的 1 。
|
整数 | 版本 2 |
HOUR_UNITS_DIGIT |
当前小时的个位数,例如 12:03 中的 2 。
|
整数 | 版本 2 |
DAY |
一个整数值,表示当前日期的 ZonedDateTime 对象的日期字段。此值始终介于 1 和 31 之间(包括这两个数值)。
|
整数 | 版本 1 |
DAY_Z |
一个字符串值,表示当前日期的 ZonedDateTime
对象的日期字段,其中包含前导零,以使值的长度为 2 个字符。此值始终介于 01 和 31 之间(包括这两个数值)。
|
字符串 | 版本 1 |
DAY_HOUR |
一个浮点值,用于组合表示当前日期和时间的 ZonedDateTime
对象的日期字段和小时字段。此值始终介于 1.0 和 $ 31 \frac{23}{24} $ 之间(包括这两个数值)。
|
浮点数 | 版本 1 |
DAY_0_30 |
表示当前日期的 ZonedDateTime
的
getDayOfMonth() 值的修改版,用于表示当前日期,需要减去 1。此值始终介于 0 和 30 之间(包括这两个数值)。
|
整数 | 版本 1 |
DAY_0_30_HOUR |
一个浮点值,用于组合表示当前日期和时间的 ZonedDateTime
对象的日期字段和小时字段。此值始终介于 0.0 和 $ 30 \frac{23}{24} $ 之间(包括这两个数值)。
|
浮点数 | 版本 1 |
DAY_OF_YEAR |
自日历年更改以来已经开始的天数。此值始终介于 1 和 366 之间(包括这两个数值),并且非闰年的最大值为 365 。
|
整数 | 版本 1 |
DAY_OF_WEEK |
表示当前日期的 ZonedDateTime
的 getDayOfWeek() 值的修改版。表盘格式会指定值 1 代表星期天,并指定值 7 代表星期六。
|
整数 | 版本 1 |
DAY_OF_WEEK_F |
周几,表示为一个完整长度的字符串。示例包括 Sunday 和 Monday 。
|
字符串 | 版本 1 |
DAY_OF_WEEK_S |
周几,表示为一个缩写的字符串。示例包括 Sun 和 Mon 。
|
字符串 | 版本 1 |
FIRST_DAY_OF_WEEK |
根据 getFirstDayOfWeek() 提供一周的第一天,其中 1 表示星期日,7 表示星期六。例如,美国为星期日,法国为星期一。
|
整数 | 版本 2 |
MONTH |
一个整数值,表示当前日期的 ZonedDateTime
对象的月份字段。此值始终介于 1 和 12 之间(包括这两个数值)。
|
整数 | 版本 1 |
MONTH_Z |
一个字符串值,表示当前日期的 ZonedDateTime
对象的月份字段,其中包含前导零,以使值的长度为 2 个字符。此值始终介于 01 和 12 之间(包括这两个数值)。
|
字符串 | 版本 1 |
MONTH_F |
一年中的当前月份,表示为一个完整长度的字符串。示例包括 January 和 December 。
|
字符串 | 版本 1 |
MONTH_S |
一年中的当前月份,表示为一个缩写的字符串。示例包括 Jan 和 Dec 。
|
字符串 | 版本 1 |
DAYS_IN_MONTH |
当前月份的天数。此值在 2 月为 28 或 29 ,在 4 月、6 月、9 月和 11 月为 30 ,在公历的所有其他月份为 31 。
|
整数 | 版本 1 |
MONTH_DAY |
一个浮点值,用于组合表示当前日期的 ZonedDateTime
对象的月份字段和经过修改的日期字段。此值始终介于 1.0 和 $ 12 \frac{29}{30} $ 之间(包括这两个数值)。
|
浮点数 | 版本 1 |
MONTH_0_11 |
表示当前日期的 ZonedDateTime
的 getMonthValue() 值的修改版。此值将为 1 月指定值 0 ,并为 12 月指定值 11 。
|
整数 | 版本 1 |
MONTH_0_11_DAY |
一个浮点值,用于组合表示当前日期的 ZonedDateTime
对象的经过修改的月份字段和经过修改的日期字段。此值始终介于 0.0 和 $ 11 \frac{29}{30} $ 之间(包括这两个数值)。
|
浮点数 | 版本 1 |
YEAR |
一个整数值,表示当前日期的 ZonedDateTime
对象的年份字段。此值的限制取值范围始终介于 1902 和 2100 之间(包括这两个数值)。
|
整数 | 版本 1 |
YEAR_S |
一个两位整数,表示当前年份的最后两位数字。例如,2023 的值为 23 。
|
整数 | 版本 1 |
YEAR_MONTH |
一个浮点值,用于组合表示当前日期的 ZonedDateTime
对象的年份字段和经过修改的日期字段。2023 年 1 月表示为 2023.0 ,而 2023 年 12 月表示为 $ 2023 \frac {11}{12} $。
|
浮点数 | 版本 1 |
YEAR_MONTH_DAY |
一个浮点值,用于组合表示当前日期的 ZonedDateTime
对象的年份字段、经过修改的月份字段和经过修改的日期字段。2023 年 1 月 1 日表示为 2023.0 ,而 2023 年 12 月 31 日表示为 $ 2023 \frac{11 \frac{29}{30} }{12} \approx 2023.9972 $。
|
浮点数 | 版本 1 |
WEEK_IN_MONTH |
一个整数,表示当前日期的 ChronoField 对象的 ALIGNED_WEEK_OF_MONTH 值。此值始终介于 0 和 5 之间(包括这两个数值)。
|
整数 | 版本 1 |
WEEK_IN_YEAR |
一个整数,表示当前日期的 ChronoField 对象的 ALIGNED_WEEK_OF_YEAR 值。此值始终介于 1 和 53 之间(包括这两个数值)。
|
整数 | 版本 1 |
IS_24_HOUR_MODE |
一个布尔值,相当于 is24HourFormat() 的当前返回值,基于用户选择的语言区域和偏好设置。
|
布尔值 | 版本 1 |
IS_DAYLIGHT_SAVING_TIME |
一个布尔值,相当于对当前语言区域的 TimeZone 对象调用 inDaylightTime() ,并传入包含当前时间的 Date 对象。指示当前设置的时区目前是否采用夏令时。
|
布尔值 | 版本 1 |
TIMEZONE |
一个字符串,相当于对当前语言区域的 TimeZone 对象调用 getDisplayName() 。返回完整的时区名称,例如冬季将针对纽约市所处的时区返回“东部标准时间”。
|
字符串 | 版本 1 |
TIMEZONE_ABB |
一个字符串,相当于对当前语言区域的 TimeZone 对象调用 getDisplayName() 的过载版本,其中给定的样式为 SHORT 。返回缩写的时区名称,例如冬季将针对纽约市所处的时区返回“EST”。
|
字符串 | 版本 1 |
TIMEZONE_ID |
一个字符串,相当于对当前语言区域的 TimeZone 对象调用 getId() 。返回 IANA 时区 ID 值,例如针对纽约市所处的时区返回 America/New_York 。
|
字符串 | 版本 1 |
TIMEZONE_OFFSET |
一个字符串,相当于对当前语言区域的 TimeZone 对象调用 getRawOffset() 。此值始终介于 -12 和 +14 之间(包括这两个数值)。可返回一个值,世界协调时间 (UTC) 应与此值相加,才能得出当前时区的标准时间(未校正为夏令时)。
|
字符串 | 版本 1 |
TIMEZONE_OFFSET_DST |
一个字符串,相当于将当前日期传入当前语言区域的 TimeZone 对象的 getOffset() 。此值始终介于 -12 和 +14 之间(包括这两个数值)。可返回一个值,世界协调时间 (UTC) 应与此值相加,才能得出当前的当地时间(必要时需要考虑到夏令时)。
|
字符串 | 版本 1 |
AMPM_STATE |
一个整数,表示当前时间是中午之前、中午还是中午之后。可能的值包括 0 (针对“凌晨/上午”)和 1 (针对“下午/晚上”)。
|
整数 | 版本 1 |
AMPM_POSITION |
一个整数,表示“凌晨/上午”或“下午/晚上”指示器应在时间字符串中的显示位置。包含以下某个值:
|
整数 | 版本 1 |
AMPM_STRING |
一个包含两个字符的字符串,表示当前时间的“凌晨/上午”或“下午/晚上”状态。其值为“凌晨/上午”或“下午/晚上”。 | 字符串 | 版本 1 |
MOON_PHASE_POSITION |
一个整数值,用于表示自最近一次新月以来已经开始的天数。此值始终介于 0 和 28 之间(包括这两个数值)。
|
整数 | 版本 1 |
MOON_PHASE_TYPE |
一个整数,用于对当前月相进行编码。可能的值包括:
|
整数 | 版本 1 |
MOON_PHASE_TYPE_STRING |
一个字符串,表示当前的月相。可能的值包括:
|
字符串 | 版本 1 |
LANGUAGE_LOCALE_NAME |
一个字符串,表示 Wear OS 设备的当前语言区域,表示为一个包含两个字符的 ISO 639-1 语言代码、一条下划线和一个包含两个字符的 ISO 3166-1 地区代码。英语的美国变体表示为 en_US 。
|
字符串 | 版本 1 |
STEP_COUNT |
用户当天到目前为止走过的步数,基于 Wear OS 传感器。 | 整数 | 版本 1 |
STEP_GOAL |
用户选择作为每日步数目标的步数。此值始终不小于 1000 。
|
整数 | 版本 1 |
STEP_PERCENT |
一个整数,表示用户当前实现步数目标的进度,表示为经过四舍五入的百分比。此值始终介于 0 和 100 之间(包括这两个数值)。
|
整数 | 版本 1 |
HEART_RATE |
用户当前的心率,基于 Wear OS 传感器。此值始终介于 如需始终将心率表示为整数,请使用表达式 |
浮点数或字符串,具体取决于设备 | 版本 1 |
HEART_RATE_Z |
一个字符串,表示用户当前的心率,基于 Wear OS 传感器。可视需要在此值左侧添加零,以使其长度至少为 2 个字符。因此,如果用户的心率为 65,则此值为 65 。如果用户的心率为 0,则此值为 00 。
|
字符串 | 版本 1 |
ACCELEROMETER_IS_SUPPORTED |
布尔值,表示表盘是否可以从当前 Wear OS 设备的传感器获取加速度计数据。
00 。
|
布尔值 | 版本 1 |
ACCELEROMETER_X |
一个浮点值,表示 x 轴的当前线性加速度,基于 Wear OS 设备的加速度计。正值表示当表盘指向天空或天花板时,Wear OS 设备会向右加速。 | 浮点数 | 版本 1 |
ACCELEROMETER_Y |
一个浮点值,表示 y 轴的当前线性加速度,基于 Wear OS 设备的加速度计。正值表示当表盘指向天空或天花板时,Wear OS 设备会沿着表盘在 12 点(顶部)方向上加速。 | 浮点数 | 版本 1 |
ACCELEROMETER_Z |
一个浮点值,表示 z 轴的当前线性加速度,基于 Wear OS 设备的加速度计。正值表示当表盘指向天空或天花板时,Wear OS 设备会朝着天空或天花板加速。
注意:在设备处于静态时,为权衡重力因素,此值约为 -9.8 。
|
浮点数 | 版本 1 |
ACCELEROMETER_Z |
一个浮点值,表示 z 轴的当前线性加速度,基于 Wear OS 设备的加速度计。正值表示当表盘指向天空或天花板时,Wear OS 设备会朝着天空或天花板加速。
注意:在设备处于静态时,为权衡重力因素,此值约为 -9.8 。
|
浮点数 | 版本 1 |
ACCELEROMETER_ANGLE_X |
一个浮点值,表示相对于 x 轴的当前角加速度(以度为单位)。此值始终在 $ [-90.0, 90.0 $] 的范围内。 | 浮点数 | 版本 1 |
ACCELEROMETER_ANGLE_Y |
一个浮点值,表示相对于 y 轴的当前角加速度(以度为单位)。此值始终在 $ [-90.0, 90.0 $] 的范围内。 | 浮点数 | 版本 1 |
ACCELEROMETER_ANGLE_Z |
一个浮点值,表示相对于 z 轴的当前角加速度(以度为单位)。此值始终在 $ [-90.0, 90.0 $] 的范围内。 | 浮点数 | 版本 1 |
ACCELEROMETER_ANGLE_XY |
一个浮点值,它是 ACCELEROMETER_ANGLE_X 和 ACCELEROMETER_ANGLE_Y 的总和。
|
浮点数 | 版本 1 |
BATTERY_PERCENT |
一个整数,表示 Wear OS 设备的当前电量(以百分比表示)。值 100 表示电池电量已满;值 0 表示电池电量极低。
|
整数 | 版本 1 |
BATTERY_CHARGING_STATUS |
一个布尔值,表示 Wear OS 设备的电池是否正在充电。如果电池已完成充电且电量充足,则此值为 true 。
|
布尔值 | 版本 1 |
BATTERY_IS_LOW |
一个布尔值,表示 Wear OS 设备的电池电量是否不足。具体阈值取决于制造商。如果电池正在充电,则此值为 false 。
|
布尔值 | 版本 1 |
BATTERY_TEMPERATURE_CELSIUS |
一个浮点值,表示 Wear OS 设备的电池温度(以摄氏度为单位)。此值的计算方法为电池的原始温度值(以十分之一摄氏度为单位)除以 10。 | 浮点数 | 版本 1 |
BATTERY_TEMPERATURE_FAHRENHEIT |
一个浮点值,表示 Wear OS 设备的电池温度(以华氏度为单位)。此值由摄氏度换算而来。 | 浮点数 | 版本 1 |
UNREAD_NOTIFICATION_COUNT |
一个字符串,表示已发送到此 Wear OS 设备的用户尚未读取的通知数量。 | 整数 | 版本 1 |
WEATHER.IS_AVAILABLE |
如果有可渲染的天气数据,则返回 true。 | 布尔值 | 版本 2 |
WEATHER.IS_ERROR |
如果加载天气数据时出错,则返回 true。
|
布尔值 | 版本 2 |
WEATHER.CONDITION |
表示当前天气状况的枚举值。 可能的值为:
注意:如果使用 |
整数 | 版本 2 |
WEATHER.CONDITION_NAME |
以人类可读的方式表示的天气数据,已翻译成用户的首选语言。 | 字符串 | 版本 2 |
WEATHER.IS_DAY |
如果当前条件适用于白天,则返回 true。非常有用,因为一天的时长会随着一年的变化而变化。 | 布尔值 | 版本 2 |
WEATHER.TEMPERATURE |
当前温度(以用户的首选单位表示)。 | 整数 | 版本 2 |
WEATHER.TEMPERATURE_UNIT |
温度单位。值可以是:
|
整数 | 版本 2 |
WEATHER.DAY_TEMPERATURE_LOW |
当天的最低温度。 | 整数 | 版本 2 |
WEATHER.DAY_TEMPERATURE_HIGH |
当天的最高温度。 | 整数 | 版本 2 |
WEATHER.CHANCE_OF_PRECIPITATION |
当前的降水概率。此值应在 0 到 100 的范围内。
|
整数 | 版本 2 |
WEATHER.UV_INDEX |
当前的紫外线指数。 | 整数 | 版本 2 |
WEATHER.LAST_UPDATED |
上次更新天气数据时的时间戳。此值以 Unix 纪元时间的毫秒数表示。 | 整数 | 版本 2 |
对于以下数据源,您可以将 index 设置为适当的值以检索预测值。index 从 0 开始。
例如,您可以使用 WEATHER.HOURS.2.CONDITION 检索 2 小时后的天气状况。
|
|||
WEATHER.HOURS.{index}.IS_AVAILABLE |
如果预报天气数据可供在 index 小时后使用,则返回 true。 开发者应先检查此值,然后再访问给定编号值的任何按小时划分的天气数据。 |
布尔值 | 版本 2 |
WEATHER.HOURS.{index}.CONDITION |
预报的天气状况,表示距离现在的小时数。 返回的值与 |
整数 | 版本 2 |
WEATHER.HOURS.{index}.CONDITION_NAME |
以用户的首选语言表示的预报天气状况(index 小时后),以人类可读的方式表示。 | 字符串 | 版本 2 |
WEATHER.HOURS.{index}.IS_DAY |
如果现在是夏令时,则返回 index 小时。非常有用,因为一天的时长会随着一年的变化而变化。 | 布尔值 | 版本 2 |
WEATHER.HOURS.{index}.TEMPERATURE |
index 小时后的预报温度(以用户的首选单位表示) | 整数 | 版本 2 |
WEATHER.HOURS.{index}.UV_INDEX |
紫外线指数预报,以用户的首选单位表示,小时后。 | 整数 | 版本 2 |
对于以下数据源,您可以将 index 设置为适当的值以检索预测值。index 从 0 开始。
例如,您可以使用 WEATHER.DAYS.1.TEMPERATURE_LOW 检索明天的最低温度值(从现在算起 1 天)。
|
|||
WEATHER.DAYS.{index}.IS_AVAILABLE |
如果现在起 index 天后的天气预报数据可用,则返回 true。 开发者应先检查此值,然后再访问给定编号值的任何基于日期的天气数据。 |
布尔值 | 版本 2 |
WEATHER.DAYS.{index}.CONDITION_DAY |
白天预报的天气状况,从现在起 index 天后。 返回的值与 |
整数 | 版本 2 |
WEATHER.DAYS.{index}.CONDITION_DAY_NAME |
以用户首选语言表示的白天预报天气状况(index 天后),可供用户轻松理解。 | 字符串 | 版本 2 |
WEATHER.DAYS.{index}.CONDITION_NIGHT |
index 天后的夜间预报天气状况。 返回的值与 |
整数 | 版本 2 |
WEATHER.DAYS.{index}.CONDITION_NIGHT_NAME |
以用户首选语言表示的夜间预报天气状况(index 天后),可供人轻松理解。 | 字符串 | 版本 2 |
WEATHER.DAYS.{index}.TEMPERATURE_LOW |
预计当天最低气温,自现在起 index 天。 | 整数 | 版本 2 |
WEATHER.DAYS.{index}.TEMPERATURE_HIGH |
从现在起 index 天后的当天最高温度预报。 | 整数 | 版本 2 |
WEATHER.DAYS.{index}.CHANCE_OF_PRECIPITATION |
未来 index 天内的降水概率预报。 返回值在 |
整数 | 版本 2 |
WEATHER.DAYS.{index}.CHANCE_OF_PRECIPITATION_NIGHT |
预计的夜间降水概率,自现在起 index 天。 返回值在 |
整数 | 版本 2 |
WEATHER.DAYS.{index}.UV_INDEX |
紫外线指数预报,天数后。 | 整数 | 版本 2 |