香味

Flavor 指定一组配置值,作为预设分组。 通常,用户可以在配套应用中从这些 Flavor 中进行选择。

Flavor 可包含现有配置的值,包括 以下类型:

  • BooleanConfiguration
  • ColorConfiguration
  • ListConfiguration
  • ComplicationSlot

从版本 2 开始

语法

<Flavor id="string" displayName="string" icon="string"
    screenReaderText="string">
    <!-- Flavor-specific child elements. -->
    <Configuration ... />
    <ComplicationSlot .../>
<Flavor/>>

您可以在 UserConfigurations 元素中添加 Flavor 元素, 如以下示例中所示:

<UserConfigurations>
  <!-- Configuration definitions go here -->
  <ColorConfiguration id="themeColor" ... />
  <!-- ... -->

  <!-- The defaultValue is required. Set this attribute to the ID
       of the flavor that the system should show by default. -->
  <Flavors defaultValue="1">
    <Flavor id="1" displayName="1st flavor" icon="flavor_1_preview">
        <Configuration id="themeColor" optionId="0"/>
        <ComplicationSlot slotId="0">
            <DefaultProviderPolicy
                defaultSystemProvider="DAY_OF_WEEK"
                defaultSystemProviderType="SHORT_TEXT"/>
        </ComplicationSlot>
    </Flavor>

    <Flavor id="2" displayName="2nd flavor" icon="flavor_2_preview">
        <Configuration id="themeColor" optionId="1"/>
        <ComplicationSlot slotId="0">
            <DefaultProviderPolicy
                defaultSystemProvider="WATCH_BATTERY"
                defaultSystemProviderType="SHORT_TEXT"/>
        </ComplicationSlot>
    </Flavor>
  </Flavors>
</UserConfigurations>

如需使用 Flavors,必须将以下代码添加到 res/xml/watch_face_info.xml

<?xml version="1.0" encoding="utf-8"?>
<WatchFaceInfo>
    ...
    <MultipleInstancesAllowed value="true" />
    <FlavorsSupported value="true" />
</WatchFaceInfo>

属性

Flavor 元素具有以下属性:

必需属性

以下属性是必需属性:

id
Flavor 的唯一标识符。
displayName
与随播广告素材中显示的文本对应的资源 ID。

可选属性

以下属性是可选属性:

icon
与 随播广告。此图片的最大尺寸应为 360x360 像素。
screenReaderText
与用户已启用 TalkBack 时使用的文本对应的资源 ID。

内部元素

Flavor 元素必须包含至少一个 Configuration 元素,且只能 可以选择性地包含 ComplicationSlot 元素。

  • Configuration 元素引用之前定义的配置 元素(例如 BooleanConfiguration)。id通过 Configuration 元素用于设置此配置选项的选定值 使用 optionId 属性。

  • ComplicationSlot 元素可用于指定 给定 FlavorDefaultProviderPolicy