color dinámico

Material You design se lanzó con la versión Android 12 y se amplió con Android 13.

Esta página se centra en las actualizaciones de la lógica Material You para ayudarle a integrarse con un soporte de color dinámico más rico.

Paletas tonales de colores dinámicas

A partir de Android 12, se admiten las siguientes paletas tonales de colores dinámicas:

Cada uno de ellos consta de un conjunto de 13 colores con varios valores de luminancia definidos como se describe en R.color , pero con valores de tono y croma indefinidos que el sistema Android puede generar dinámicamente en tiempo de ejecución.

Estilos de tema para color dinámico

A partir de Android 13, se admiten seis estilos de temas diferentes con variaciones en el algoritmo de color dinámico que mantienen las necesidades de los desarrolladores y contrastan las expectativas. Estos se enumeran para generar los 65 colores dinámicos utilizados por las aplicaciones:

  • TONAL_SPOT es una paleta de intensidad media que utiliza un color system_accent3_0 análogo al color system_accent1_0 (transferido de la versión de Android 12 y ligeramente ajustado).
  • VIBRANT es una paleta de alta vitalidad que combina armoniosamente cambios sutiles entre colores.
  • EXPRESSIVE es una paleta de alta vitalidad que combina colores con acentos inesperados y únicos.
  • SPRITZ es una paleta de baja intensidad que crea un lavado suave entre colores.
  • RAINBOW utiliza acentos cromáticos y superficies neutras para crear una experiencia de color más sutil para los usuarios.
    • NO SE RECOMIENDA su uso con extracción de color basada en papel tapiz y, en su lugar, debe usarse con temas de color estáticos.
  • FRUIT_SALAD proporciona dos colores tonales para dar a los usuarios más expresión.
    • NO SE RECOMIENDA su uso con extracción de color basada en papel tapiz y, en su lugar, debe usarse con temas de color estáticos.

El tema del sistema se rige por la misma configuración que en Android 12, que es Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES . Para Android 13, solo requiere una clave en su JSON que envía el color de origen para generar las 65 paletas de colores:

{
    "android.theme.customization.system_palette":"746BC1"
}

El estilo de tema predeterminado es TONAL_SPOT , pero opcionalmente puedes especificar uno de los otros estilos de tema con una clave adicional con el JSON de arriba:

{
    "android.theme.customization.system_palette":"746BC1"
    "android.theme.customization.theme_style":"EXPRESSIVE"
}

Integración de color dinámico

Para obtener pautas sobre la integración de colores dinámicos, consulte Integración del material que usted diseña .

Preguntas frecuentes (FAQ)

¿Qué incluye la API de paleta tonal dinámica?

¿Cómo se genera una paleta tonal dinámica?

Se debe generar una paleta tonal dinámica a partir de un único color de origen que debe derivarse del fondo de pantalla mediante com.android.systemui.monet.ColorScheme#getSeedColors , que proporciona varios colores de origen válidos. Si ninguno de los colores proporcionados cumple con el requisito de color de origen, el color de origen único debe usar el valor 0xFF1B6EF3 .