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 de parámetros de configuración existentes, como los los siguientes tipos:

  • BooleanConfiguration
  • ColorConfiguration
  • ListConfiguration
  • ComplicationSlot

A partir de la versión 2

Sintaxis

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

Puedes incluir elementos Flavor en un elemento UserConfigurations. como se muestra en el siguiente ejemplo:

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

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.

Atributos opcionales

Los siguientes atributos son opcionales:

icon
Un ID de recurso que corresponde al recurso de elemento de diseño que se muestra en el compañero. 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 puede De manera opcional, puedes incluir elementos ComplicationSlot.

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

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