Parfum

Un Flavor spécifie un ensemble de valeurs de configuration, regroupées en tant que valeurs prédéfinies. En règle générale, l'utilisateur peut choisir l'un de ces types dans l'application associée.

Un élément Flavor peut inclure des valeurs pour les configurations existantes, y compris les types suivants:

  • BooleanConfiguration
  • ColorConfiguration
  • ListConfiguration
  • ComplicationSlot

Depuis la version 2

Syntaxe

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

Vous pouvez inclure des éléments Flavor dans un élément UserConfigurations, comme illustré dans l'exemple suivant:

<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>

Pour utiliser Flavors, vous devez ajouter les éléments suivants à res/xml/watch_face_info.xml:

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

Attributs

L'élément Flavor comporte les attributs suivants :

Attributs obligatoires

Les attributs suivants sont obligatoires :

id
Identifiant unique de la Flavor.
displayName
ID de ressource correspondant au texte affiché dans l'annonce associée.
defaultValue
Cet attribut n'est pas utilisé et doit être vide.

Attributs facultatifs

Les attributs suivants sont facultatifs :

icon
ID de ressource correspondant à la ressource drawable, qui est affiché dans l'élément associé. La taille ne doit pas dépasser 360 x 360 pixels.
screenReaderText
ID de ressource correspondant au texte utilisé si TalkBack a été activé.

Éléments internes

L'élément Flavor doit contenir au moins un élément Configuration et peut éventuellement inclure des éléments ComplicationSlot.

  • L'élément Configuration fait référence à des éléments de configuration définis précédemment, tels que BooleanConfiguration, à l'aide de l'attribut id. Les éléments Configuration définissent la valeur choisie pour cette option de configuration à l'aide de l'attribut optionId.

  • L'élément ComplicationSlot peut être utilisé afin de spécifier le DefaultProviderPolicy pour un Flavor donné.