复杂功能简介

复杂功能是指表盘上显示的除时间以外的其他任意功能。例如,电量指示器就是一项复杂功能。Complications API 既适用于表盘,也适用于数据源应用。

本文档的其余部分将介绍数据源、表盘和复杂功能类型。

复杂功能数据源

为表盘提供复杂功能相关数据(如电池电量、天气或步数数据)的应用称为“复杂功能数据源”。这些数据源会提供原始数据,并且不负责控制数据在表盘上的呈现方式。如需了解如何编写为表盘提供数据的应用,请参阅向复杂功能提供数据

下图显示了 Wear OS by Google 谷歌如何协调从数据源到表盘的数据流。

复杂功能数据流
图 1. 复杂功能数据流。

表盘上的复杂功能

表盘从复杂功能数据源接收数据,这样便可以包含复杂功能,而无需用于获取底层数据的代码。表盘负责控制数据的呈现方式,因此可以将数据与其设计自然融合在一起。如需了解详情,请参阅有关复杂功能的设计指南。

注意:在即将发布的 Wear OS 版本中,表盘需要使用表盘格式来支持包含用户数据的复杂功能。建议您更新表盘以使用表盘格式。详细了解复杂功能的这些变更

如需了解如何向表盘添加复杂功能,请参阅向表盘添加复杂功能

复杂功能类型

复杂功能类型用于定义可在复杂功能中显示的数据类型,或可由数据源提供的数据类型。例如,如果数据主要由短字符串组成,请使用 SHORT_TEXT 类型。ComplicationData 对象始终有一个复杂功能类型,用来定义必填字段和选填字段。必填字段代表数据的主要部分;大多数类型的名称都取自必填字段。

数据源使用复杂功能类型的方式与表盘有所不同:

  • 数据源会选择要提供的复杂功能数据的类型(包括要提供这些类型的哪些选填字段),以及可以支持多少种不同类型。例如,步数数据源可能支持 RANGED_VALUESHORT_TEXT 类型,而“下次会议”数据源可能支持 SHORT_TEXTLONG_TEXT 类型。
  • 您可以选择要在表盘中添加的复杂功能的数量,以及要支持的复杂功能类型。例如,表盘上的拨号复杂功能可能支持 SHORT_TEXTICONRANGED_VALUE 类型。表盘上的量表可能仅支持 RANGED_VALUE 类型。

如需详细了解不同的复杂功能类型和每种类型支持的字段,请参阅复杂功能类型