Accessibilité
des terminaux
mobiles
Confoo 2013
Aurelien Levy


 Directeur général
 Temesis
 Expert Accessibilité
Usages des terminaux

70% de la population mondiale a un mobile
49,9 % des personnes ayant un mobile au Canada
surfe sur le Web et utilise/télécharge des applications
80% du temps via les applications
85 000 000 de visiteurs unique par mois pour l’appli
Facebook aux USA
70% à 90% du marché
Accessibilité universelle

« Mettre le web et ses services à la
disposition de tous les individus, quels que
soient leur matériel ou logiciel, leur
infrastructure réseau, leur langue
maternelle, leur culture, leur localisation
géographique, ou leurs aptitudes physiques
ou mentales. »
Typologie du handicap

 vision
 audition
 moteur
 cognitif
accessibilité

 natif depuis le
 lancement
 amélioration à chaque
 version
 homogénéité iphone /
 ipad / osx
vision

 voiceover
 rotor
 hight contrast
 zoom
 aides sonores
vision
vision
vision
vision
vision
audition

 aides sonores
 sonnerie / vibration
 flash lumineux
 soustitrage
 facetime
audition
audition
moteur


assistive touch
vitesse de clic
moteur
cognitif


 apps mémo, taches,
 icones
 accès guidé
cognitif
accessibilité

 prise en compte à
 partir de la 1.6
 réellement utilisable à
 partir de la version 4.0
 surcouche OS propre à
 chaque fabricant
 téléphone à clavier
vision
 talkback
 kickback
 soundback
 brailleback
 explore by touch
 large text
 androidvox (contenu
 web)
Les applications natives
app




     - (BOOL)isAccessibilityElement            - (NSString *)accessibilityHint
- (NSString *)accessibilityLabel               - (NSString *)accessibilityValue
- (UIAccessibilityTraits)accessibilityTraits   - (BOOL)shouldGroupAccessibilityChildren
- (CGRect)accessibilityFrame
traits et propriétés
 Label : intitulé court du composant
 (mais pas le type cf traits)

 Traits : combinaison d’une ou
 plusieurs caractéristiques décrivant
 le composant ou son état, usage,
 comportement

 Hint : description succincte du
 résultat de l’action sur le composant

 Frame: coordonnées et dimension
 du composant à l’écran

 Value : la valeur d’un composant
activation, notif, focus
 NSString
 UIAccessibilityVoiceOverStatusChanged

 BOOL UIAccessibilityIsVoiceOverRunning()

 BOOL UIAccessibilityIsInvertColorsEnabled()

 UIAccessibilityPostNotification
 ( UIAccessibilityLayoutChangedNotification,
 nil);

 UIAccessibilityPostNotification
 ( UIAccessibilityScreenChangedNotification,
 nil, moveToButton););

 !!!!! en cas d’interface custom à importer/
 compléter/refaire les headers UIKit/
 UIAccessibility
app
android:contentDescription,
android:hint,
setContentDescription
(contentDescription);

android:focusable,
android:nextFocusDown,
android:nextFocusLeft,
android:nextFocusRight,
android:nextFocusUp

setFocusable(),
isFocusable(),
requestFocus()
app
AccessibilityManager.isEnabled ()

AccessibilityManager.
isTouchExplorationEnabled ()

AccessibilityEvent,
sendAccessibilityEvent()

!!!!! en cas d’interface custom,
importer/compléter/refaire
AccessibilityService
Les applications web
WCAG 2.0              (et ses enfants SGQRI, RGAA, Section 508,...)




Contenu perceptible
Contenu utilisable
Contenu compréhensible
Contenu robuste
Eléments HTML5

figure
header
footer
hgroup
etc...
Attributs HTML5
autocomplete
email
date
color
tel
required
placeholder
ARIA       (accessible rich internet application)




role
etat
attribut
gestion du focus
design pattern
Questions ?

          aurelien.levy@temesis.com
          @goetsu



          certaines des photos proviennent de la présentation
          de Paul Adam http://www.pauljadam.com/ia11y/

Mobile confoo 2013