Parfum

Un type de produit spécifie un ensemble de valeurs de configuration, regroupées en tant que préréglages. En règle générale, l'utilisateur peut choisir parmi ces saveurs dans l'application associée.

Un Flavor peut inclure des valeurs pour des 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 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, affiché dans l'élément associé. La taille ne doit pas dépasser 360 x 360 px.
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 précédemment définis, 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é pour spécifier le DefaultProviderPolicy pour un Flavor donné.