Swift et l’accessibilité : introduction à VoiceOver

Photo by Daniel Ali on Unsplash

Et si on parlait d’accessibilité pour nos applications mobiles ? En 2017, rien qu’en France, 12 millions de personnes seraient touchées par un handicap (source). Alors vous imaginez dans le monde !

J’ai été contactée pour mon application KayakTraker par une personne atteinte de déficience visuelle, qui voulait savoir si l’application était compatible VoiceOver… gros blanc 😦 Du coup, me suis prise au jeu… 🙂

Et bonne nouvelle, sous iOS, il existe beaucoup de fonctions d’accessibilité, dont VoiceOver dont nous allons parler ici. Comme en plus, c’est relativement simple à mettre en oeuvre, alors pourquoi s’en priver ?

Pourtant, encore trop souvent, l’accessibilité pour les concepteurs.rices d’applications mobiles passe loin après le design, les fonctionnalités, les patterns… Et c’est dommage car avec un peu d’empathie et d’efforts, il est possible de faire beaucoup mieux !

En fait, si vous utilisez Xcode, votre application est même probablement déjà compatible en grande partie avec VoiceOver. Apple à fait pour nous une grande partie du travail, et nous donne des outils sympas pour le terminer 🙂

Donc commençons par une petite application de démo : 1 Label, 2 Buttons, 1 TextField. Lorsque l’on clique sur le bouton « Click me ! », on affiche « Hello » dans le TextField, et le bouton « Raz » remet le TextField à 0 :

Pour tester l’application avec VoiceOver, on peut dans un premier temps l’installer sur un device physique. Il faudra ensuite activer Voice Over dans les paramètres : Général > Accessibilité > VoiceOver. Cela permet déjà un premier test et de voir quelles informations manquent.

Mais ce n’est pas très pratique pour développer…

Heureusement, si il n’est pas possible (actuellement) d’activer les options d’accessibilité sur le simulateur, il est possible d’utiliser l’Accessibility Inspector depuis Xcode. Pour cela, rendez-vous dans le menu Xcode > Open Developer Tool > Accessibility Inspector.

On voit bien que le plus gros est fait, mais il reste quelques finitions…

Pour cela Apple à prévu les options d’accessibilité depuis le storyboard. D’une façon générale, chaque élément (Button, TextField…) possède des options d’accessibilité, qu’il suffit d’activer et de compléter :

Pour plus d’infos sur les traits, vous pouvez vous référer à la documentation officielle : https://developer.apple.com/

Voilà, une fois ces étapes accomplies, nous avons une application nettement plus accessible pour les personnes qui en ont besoin ! Ce n’est vraiment pas beaucoup de travail comparé à l’immense service que nous rendons !

Et le plus beau pour la fin : les options d’accessibilités gèrent aussi les traductions, comme toutes les autres éléments de l’interface 🙂

Vous pouvez donc retrouver vos labels et gérer vos traductions dans les fichiers strings dédiés. D’ailleurs, pour le rafraîchissement de ces fichiers, BartyCrouch est votre ami… mais cela fera l’objet d’un autre article.

Voilà pour cette introduction à l’accessibilité pour les applications iOS / Swift via VoiceOver. ce n’est bien sûr qu’une introduction, et VoiceOver ne prend en compte qu’une partie de l’accessibilité.

L’accessibilité se pense en globalité : au niveau du design, au niveau du parcours… J’en parlerai également dans de futurs articles ! En attendant, comme d’habitude, n’hésitez pas à me faire part de vos remarques / suggestions dans les commentaires !

Développement d’applications mobiles

Développeur Swift en perpétuelle recherche de nouveaux challenges pour utiliser ses compétences en développement d’applications mobiles iPhone, iPad, Apple Watch !

Vous avez une idée d’application mobile iOS ? Une application Android à porter sur la plateforme Apple ? Besoin d’une appli Apple Watch ? Programmeur d’applications iOS natives et entrepreneur, je mets ma passion au service de vos projets, avec toujours 3 constantes :

  • L’écoute et la compréhension des besoins du client
  • La qualité technique de la prestation
  • La satisfaction du client

En tant que développeur iOS / Swift, je peux vous accompagner du stade projet de votre application mobile (échanges avec le designer…) à la mise sur l’App Store (soumission, préparation des documents App Store, communication avec Apple…), en passant bien entendu par le codage de l’appli en environnement Xcode / Swift 5.

Ayant également une expérience en développement Android / Java, je suis aussi à même d’effectuer le portage de votre application mobile native Android sur iOS.

En développement Apple iOS Swift, j’utilise régulièrement les frameworks et librairies :

  • UIKit
  • WatchKit
  • Core Data
  • Firabase
  • MapKit
  • Alamofire
  • SwiftyJASON
  • … Et bien d’autres !

En résumé, entrepreneur freelance depuis 2011 et développeur iOS / Swift depuis 2015, je maitrise tous les aspects du développement d’une application mobile, de sa création à son déploiement, en passant par la configuration de serveurs dans le cloud pour les fonctionnalités avancées.

Je travaille majoritairement à distance, mais je peux me déplacer ponctuellement dans vos locaux au besoin (démarrage de projet…).

N’hésitez pas à prendre contact avec moi pour tout projet d’application mobile pour Apple iOS, je me ferai une joie de transformer votre projet en réalité !