2010-08-01 6 views
37

J'ai un ami qui est tout à fait un programmeur capable, d'autant plus qu'il est aveugle. Maintenant, il aimerait commencer à développer pour Android. Mais, le problème que je vois en courant est qu'il ne semble y avoir aucune fonctionnalité d'accessibilité pour l'émulateur Android. Idéalement, il serait capable de faire lire à son ordinateur le contenu de l'écran d'émulation Android. Cependant, au moins de ce que j'ai vu, le contenu de l'écran Android et les boutons qui peuvent être utilisés pour manipuler l'émulation Android, etc. sont tous invisibles pour un lecteur d'écran.Programmation pour Android comme une personne aveugle

Est-ce que quelqu'un sait d'une solution de contournement pour cela?


MISE À JOUR: J'ai trouvé ce qui ressemble à une ressource prometteuse here. C'est une bibliothèque Text-to-Speech pour Android développée par T. V. Raman de Google. Je cherche toujours plus d'informations de la part de la communauté.

+0

Cela pourrait être difficile étant donné que sur un écran tactile, la position et la taille des éléments est d'une importance primordiale ... – MvanGeest

+2

Je pense que c'est une question spectaculaire! –

Répondre

9

Je suis en train de sortir ma réponse avec mes expériences. J'ai acheté un Nexus 7 première génération remis à neuf pour essayer et apprendre la programmation Android. L'installation du SDK Android avec l'Eclipse fourni était complètement accessible. J'ai également été en mesure d'activer l'accessibilité sur mon Nexus 7 sans aide. Activation des paramètres de développeur sur le Nexus était également entièrement accessible. J'ai été capable de créer un projet Android en utilisant Eclipse sans problèmes. Impossible d'utiliser l'éditeur de disposition graphique pour ajouter des widgets à une mise en page, même si j'ai pu modifier le code XML pour créer un bouton sans problème. On dirait que les mises en page sont faisables, il vous suffira de référencer les docs pour un bon XML. J'ai créé une méthode à appeler quand le bouton a été cliqué avec une boucle for afin que je puisse tester le débogage. J'ai débogué l'application sur mon Nexus et mis un point d'arrêt dans le corps de la boucle for. J'ai été capable d'utiliser les fonctions standard d'Eclipse pour passer pas à pas une fois que le point d'arrêt a été atteint et voir les valeurs des variables. Jusqu'à présent, l'accessibilité Android est bonne pour le SDK Android standard. Je prévois de tester Android Studio et mettra à jour ma réponse avec les résultats.

Un long fil sur ce qui peut être trouvé à http://www.freelists.org/post/programmingblind/Is-Android-Programming-Accessible Ce que j'ai compris de ce que l'accessibilité peut être activé avec peu ou pas de l'aide vue. Quand j'ai essayé d'activer le talkback, l'émulateur a été rendu inutilement lent, même si c'était il y a plus d'un an, alors peut-être que les choses se sont améliorées? Je suis un programmeur aveugle et je sais qu'Eclipse est accessible avec Jaws, donc il devrait pouvoir programmer avec un IDE ou une ligne de commande et un éditeur de texte. Je n'ai pas étudié cela mais si l'émulateur est lent peut-être une autre option serait d'exécuter une version x86 d'Android dans le lecteur VMWare? Un lecteur d'écran écrit par les employés de Google se trouve à http://google-opensource.blogspot.com/2009/10/talkback-open-source-screenreader-for.html et un écrit par quelqu'un d'autre peut être trouvé à http://spielproject.info/

4

Une option pourrait être de faire du débogage sur un vrai téléphone avec l'accessibilité activée. Le débogage fonctionne essentiellement de la même manière (et vous n'avez pas à gérer la lenteur de l'émulateur - je préfère de loin cette méthode car elle est beaucoup plus rapide).

C'est certainement une option plus chère si votre ami n'a pas déjà un téléphone android.

Je pense que la meilleure question pourrait être "pourquoi les fonctionnalités d'accessibilité manquent-elles à l'émulateur Android"? Peut-être que la synthèse vocale est trop lente sur l'émulateur?

+0

Oui. Je me demandais à ce sujet aussi (c'est-à-dire, si l'émulateur peut supporter TTS). Lorsque j'exécute l'exemple Hello World dans l'émulateur, il fait vraiment cuire mon CPU. – JnBrymn

Questions connexes