La conception Material You a été lancée avec Android 12 et étendue avec Android 13.
Cette page se concentre sur les mises à jour de la logique Material You pour vous aider à intégrer une prise en charge plus riche des couleurs dynamiques.
Palettes tonales de couleurs dynamiques
À partir d'Android 12, les palettes tonales de couleurs dynamiques suivantes sont prises en charge :
Chacun d'eux comprend un ensemble de 13 couleurs avec différentes valeurs de luminance définies, comme décrit sur la page R.color
. Toutefois, les valeurs de teinte et de chroma ne sont pas définies et peuvent être générées de manière dynamique par le système Android au moment de l'exécution.
Styles de thème pour la couleur dynamique
À partir d'Android 13, six styles de thème différents sont pris en charge avec des variations de l'algorithme de couleur dynamique qui répondent aux besoins des développeurs et aux attentes en termes de contraste. Voici la liste des 65 couleurs dynamiques utilisées par les applications :
TONAL_SPOT
est une palette de moyenne intensité qui utilise une couleursystem_accent3_0
analogue à la couleursystem_accent1_0
(reprise de la version Android 12 et légèrement ajustée).VIBRANT
est une palette à haute intensité qui mélange harmonieusement les subtiles variations de couleurs.EXPRESSIVE
est une palette très vive qui associe des couleurs d'accentuation inattendues et uniques.SPRITZ
est une palette à faible intensité qui crée un dégradé doux entre les couleurs.RAINBOW
utilise à la fois des accents chromatiques et des surfaces neutres pour créer une expérience colorée plus subtile pour les utilisateurs.- Il est DÉCONSEILLÉ de l'utiliser avec l'extraction de couleurs basée sur le fond d'écran. Il est préférable de l'utiliser avec des thèmes de couleurs statiques.
FRUIT_SALAD
propose des couleurs bicolores pour permettre aux utilisateurs de s'exprimer davantage.- Il est DÉCONSEILLÉ de l'utiliser avec l'extraction de couleurs basée sur le fond d'écran. Il est préférable de l'utiliser avec des thèmes de couleurs statiques.
Le thème système est régi par le même paramètre que dans Android 12, à savoir Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES
. Pour Android 13, une seule clé est requise dans le fichier JSON pour envoyer la couleur source et générer les 65 palettes de couleurs :
{
"android.theme.customization.system_palette":"746BC1"
}
Le style de thème par défaut est TONAL_SPOT
, mais vous pouvez éventuellement spécifier l'un des autres styles de thème avec une clé supplémentaire dans le code JSON ci-dessus :
{
"android.theme.customization.system_palette":"746BC1"
"android.theme.customization.theme_style":"EXPRESSIVE"
}
Intégrer les couleurs dynamiques
Pour obtenir des consignes sur l'intégration de la couleur dynamique, consultez Intégrer la conception Material You.
Questions fréquentes
Que comprend l'API de palette tonale dynamique ?
Il existe cinq palettes tonales :
Chaque palette tonale comporte 13 valeurs de couleur se terminant par les index 0, 10, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900 et 1 000.
L'API résultante est une combinaison du nom de la palette tonale, se terminant par l'index. Par exemple :
R.color#system_accent1_10
Comment une palette tonale dynamique est-elle générée ?
Une palette tonale dynamique doit être générée à partir d'une seule couleur source, qui doit être dérivée du fond d'écran à l'aide de com.android.systemui.monet.ColorScheme#getSeedColors
, qui fournit plusieurs couleurs sources valides. Si aucune des couleurs fournies ne répond à l'exigence de couleur source, la couleur source unique doit utiliser la valeur 0xFF1B6EF3
.