Material You a été lancé avec la version Android 12 et étendu à 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 de couleurs tonales dynamiques
À partir d'Android 12, les palettes tonales de couleurs dynamiques suivantes sont compatibles:
Chacune d'elles se compose d'un ensemble de 13 couleurs avec différentes valeurs de luminance définies comme décrit dans R.color
, mais avec des valeurs de teinte et de chrominance non définies qui peuvent être générées dynamiquement 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 couleurs dynamiques qui répondent aux besoins des développeurs et aux attentes en termes de contraste. Ils sont listés pour générer les 65 couleurs dynamiques utilisées par les applications:
TONAL_SPOT
est une palette de couleurs moyennement lumineuse qui utilise une couleursystem_accent3_0
semblable à la couleursystem_accent1_0
(transférée depuis la version Android 12 et légèrement ajustée).VIBRANT
est une palette éclatante qui mélange harmonieusement des variations subtiles entre les couleurs.EXPRESSIVE
est une palette très vive qui associe des couleurs d'accentuation inattendues et uniques.SPRITZ
est une palette peu vive qui crée un léger dégradé entre les couleurs.RAINBOW
utilise à la fois des accents chromatiques et des surfaces neutres pour créer une expérience de couleur plus subtile pour les utilisateurs.- Il est NON RECOMMANDÉ d'utiliser cette méthode avec l'extraction de couleurs basée sur le fond d'écran. Utilisez plutôt des thèmes de couleurs statiques.
FRUIT_SALAD
propose deux tons de couleur pour offrir plus d'expressivité aux utilisateurs.- Il est NON RECOMMANDÉ d'utiliser cette méthode avec l'extraction de couleurs basée sur le fond d'écran. Utilisez plutôt des thèmes de couleurs statiques.
Le thème du système est géré par le même paramètre qu'il l'était dans Android 12, à savoir Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES
. Pour Android 13, une seule clé dans le fichier JSON suffit pour envoyer la couleur source afin de 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 avec le code JSON ci-dessus:
{
"android.theme.customization.system_palette":"746BC1"
"android.theme.customization.theme_style":"EXPRESSIVE"
}
Intégrer des couleurs dynamiques
Pour en savoir plus sur l'intégration de couleurs dynamiques, consultez la page Intégrer Material You Design.
Questions fréquentes
Que comprend l'API Palette tonale dynamique ?
Il existe cinq palettes tonales:
Chaque palette tonale comporte 13 valeurs de couleur se terminant par les indices 0, 10, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900 et 1 000.
L'API obtenue est une combinaison du nom de la palette tonale et se termine 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 aux exigences de couleur source, la couleur source unique doit utiliser la valeur 0xFF1B6EF3
.