Faites en sorte que votre application Android soit utilisable par tous, y compris par les personnes ayant des besoins en termes d'accessibilité.
Les appareils Android peuvent être utilisés par des personnes malvoyantes, daltoniennes, malentendantes ou présentant des troubles de la dextérité, cognitifs ou toute autre forme de handicap. Lorsque vous développez des applications en gardant l'accessibilité à l'esprit, vous améliorez l'expérience pour les utilisateurs ayant des besoins spécifiques en la matière.
Cette page vous explique comment implémenter les principaux éléments d'accessibilité afin de faciliter l'utilisation de votre application pour tous. Pour obtenir encore plus de conseils afin de rendre votre application plus accessible, consultez les principes pour améliorer l'accessibilité des applications.
Améliorer la visibilité du texte
Pour chaque ensemble de texte dans votre application, nous recommandons de choisir un contraste des couleurs minimal (ou la différence de luminosité perçue entre la couleur du texte et la couleur de l'arrière-plan). Le seuil exact dépend de la taille de police du texte et de son affichage en gras ou non :
- Si le texte est plus petit que 18 pt, ou s'il est en gras et inférieur à 14 pt, le rapport de contraste des couleurs doit être au moins égal à 4.5:1.
- Pour tout autre texte, le rapport de contraste des couleurs doit être d'au moins 3:1.
L'image suivante illustre deux exemples de contraste des couleurs du texte par rapport à l'arrière-plan :
Pour vérifier le contraste des couleurs du texte par rapport à l'arrière-plan dans votre application, utilisez un vérificateur de contraste en ligne ou l'application Accessibility Scanner.
Utiliser des commandes simples et de grande taille
L'UI de votre application est plus facile à utiliser lorsque ses commandes sont bien visibles et facilement accessibles. Nous recommandons que chaque élément d'UI interactif dispose d'une zone sélectionnable, ou zone cible tactile, d'au moins 48 dp × 48 dp. Plus cette zone est grande, mieux c'est.
Pour que la taille de la zone cible tactile d'un élément d'UI donné soit suffisamment grande, les conditions suivantes doivent s'appliquer toutes les deux :
- La somme des valeurs de
android:paddingLeft
,android:minWidth
etandroid:paddingRight
est supérieure ou égale à 48 dp. - La somme des valeurs de
android:paddingTop
,android:minHeight
etandroid:paddingBottom
est supérieure ou égale à 48 dp.
Avec les valeurs des marges intérieures, la taille visible d'un objet peut être inférieure à 48 dp × 48 dp alors que la taille de zone cible tactile recommandée est respectée.
L'extrait de code suivant montre un élément avec la taille de zone cible tactile recommandée :
<ImageButton ... android:paddingLeft="4dp" android:minWidth="40dp" android:paddingRight="4dp" android:paddingTop="8dp" android:minHeight="32dp" android:paddingBottom="8dp" />
Décrire chaque élément d'UI
Pour chaque élément d'UI de votre application, incluez une description de l'objectif de l'élément. Dans la plupart des cas, vous incluez cette description dans l'attribut contentDescription
de l'élément, comme indiqué dans l'extrait de code suivant :
<!-- Use string resources for easier localization. --> <!-- The en-US value for the following string is "Inspect". --> <ImageView ... android:contentDescription="@string/inspect" />
Lorsque vous ajoutez des descriptions aux éléments de l'interface utilisateur de votre application, gardez à l'esprit les bonnes pratiques suivantes :
N'incluez pas le type de l'élément d'UI dans la description du contenu. Les lecteurs d'écran énoncent automatiquement le type et la description de l'élément. Par exemple, si la sélection d'un bouton entraîne l'exécution de l'action "Envoyer" dans votre application, la description du bouton doit être
"Submit"
, et non"Submit button"
.Chaque description doit être unique. Ainsi, lorsque les utilisateurs de lecteurs d'écran rencontrent une description répétée d'un élément, ils comprennent que l'élément actif a déjà été sélectionné auparavant. Plus spécifiquement, chaque élément d'un groupe de vues tel que
RecyclerView
doit avoir une description différente. Chaque description doit refléter le contenu propre à un élément donné, comme le nom d'une ville dans une liste de lieux.Si la valeur
minSdkVersion
de votre application est égale ou supérieure à16
, vous pouvez définir l'attributandroid:importantForAccessibility
sur"no"
pour les éléments graphiques utilisés uniquement pour un effet décoratif.
Ressources supplémentaires
Pour en savoir plus sur la manière de rendre votre application plus accessible, consultez les ressources supplémentaires suivantes :