Sabor

Un Flavor especifica un conjunto de valores de configuración, agrupados como un ajuste predeterminado. Por lo general, el usuario puede elegir entre estos sabores en la aplicación complementaria.

Un Flavor puede incluir valores para los parámetros de configuración existentes, incluidos los siguientes tipos:

  • BooleanConfiguration
  • ColorConfiguration
  • ListConfiguration
  • ComplicationSlot

A partir de la versión 2

Sintaxis

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

Puedes incluir elementos Flavor dentro de un elemento UserConfigurations, como se muestra en el siguiente ejemplo:

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

Para usar Flavors, se debe agregar lo siguiente a res/xml/watch_face_info.xml:

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

Atributos

El elemento Flavor tiene los siguientes atributos:

Atributos obligatorios

Se requieren los siguientes atributos:

id
Es un identificador único para Flavor.
displayName
Un ID de recurso que corresponde al texto que se muestra en el anuncio complementario.
defaultValue
Este atributo no se usa y debe estar vacío.

Atributos opcionales

Los siguientes atributos son opcionales:

icon
Es un ID de recurso que corresponde al recurso de elementos de diseño que se muestra en el elemento complementario. El tamaño máximo debe ser de 360 x 360 px.
screenReaderText
Un ID de recurso que corresponde al texto que se usa si el usuario habilitó TalkBack.

Elementos internos

El elemento Flavor debe contener al menos un elemento Configuration y, de manera opcional, puede incluir elementos ComplicationSlot.

  • El elemento Configuration hace referencia a elementos de configuración definidos previamente, como BooleanConfiguration, mediante el atributo id. Los elementos Configuration establecen el valor elegido para esta opción de configuración mediante el atributo optionId.

  • El elemento ComplicationSlot se puede usar para especificar el DefaultProviderPolicy para un Flavor determinado.