風味

フレーバーは、プリセットとしてグループ化された一連の構成値を指定します。通常、ユーザーはコンパニオン アプリでこれらのフレーバーから選択できます。

Flavor には、次のような既存の構成の値を含めることができます。

  • BooleanConfiguration
  • ColorConfiguration
  • ListConfiguration
  • ComplicationSlot

バージョン 2 以降

構文

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

次の例に示すように、UserConfigurations 要素内に Flavor 要素を含めることができます。

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

  <Flavors>
    <Flavor id="1" displayName="1st flavor" icon="flavor_1_preview" defaultValue="">
        <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" defaultValue="">
        <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。
defaultValue
この属性は使用されないため、空に設定する必要があります。

オプションの属性

次の属性は省略可能です。

icon
コンパニオンに表示されるドローアブル リソースに対応するリソース ID。サイズは 360 x 360 ピクセル以下にしてください。
screenReaderText
ユーザーが TalkBack を有効にしている場合に使用されるテキストに対応したリソース ID。

内部要素

Flavor 要素には 1 つ以上の Configuration 要素を含める必要があり、必要に応じて ComplicationSlot 要素を含めることができます。

  • Configuration 要素は、id 属性を使用して、以前に定義された構成要素(BooleanConfiguration など)を参照します。Configuration 要素は、optionId 属性を使用して、この構成オプションに選択された値を設定します。

  • ComplicationSlot 要素を使用して、特定の FlavorDefaultProviderPolicy を指定できます。