So baut man VoiceOver-Support in iOS-Anwendungen ein

Anfang dieser Woche wurde ich mal wieder gefragt, wie man denn am einfachsten die Zugänglichkeit für VoiceOver in iOS-Apps verbessern kann.

Bei der Recherche stellte ich fest, dass es bisher offenbar keinen deutschsprachigen Artikel zu diesem Thema gibt. Selbst die Objective-C- und Cocoa-Bibeln von Amin Negm-Awad verlieren kein sterbenswort darüber, wie man eigene Apps so erweitert, dass sie mit VoiceOver zugänglich werden. Sprich:

Es war an der Zeit, einen Artikel zu schreiben, wie einfach es ist, iOS-Anwendungen zugänglich zu machen, so dass sie mit VoiceOver benutzbar werden. Hier ist er nun!

Einige Änderungen an meinen Blogs

Auf diesem Blog, meinem Blog über untechnische Themen und meinem englischsprachigen Blog hat es ein paar kleine Änderungen gegeben.

Zum einen besteht die Sharing-Möglichkeit jetzt nur noch auf den individuellen Artikelseiten. Die Ladezeit der Startseiten der Blogs waren doch sehr verzögert durch das Laden der verschiedenen Tweet- und Like-Buttons. Wenn ihr also von den Blogs aus Artikel teilen möchtet, müsst ihr zuerst die Artikel gesondert aufrufen, so als wolltet ihr die Kommentare lesen.

Zum zweiten gibt es jetzt eine Möglichkeit, meine Blogs und individuelle Artikel zu flattrn. Ich flattre selbst auch und unterstütze damit die Kreativität im Netz.

Viel Spaß weiterhin beim Lesen meiner Beiträge und Hinterlassen von Kommentaren! 🙂

Meine ersten Schritte mit Android

Für die Arbeit am zugänglichen Firefox für Android hat seit März auch dieses mobile Betriebssystem bei mir Einzug gehalten. Allerdings nicht für den produktiven Einsatz, sondern lediglich für rein berufliche Zwecke. Alles begann mit einem HTC Desire Z. Dies ist ein älteres Modell mit herausziehbarer physischer Tastatur und einem Navigationsknubbel auf der Oberseite des Geräts. Nach dem mein Kollege diesem ein Standard-Android 2.3 „Gingerbread“ spendiert hatte, war es auch tatsächlich halbwegs benutzbar. Die ursprünglich installierte HTC-Sense-Oberfläche war hingegen so gut wie gar nicht zugänglich.

Der in Gingerbread noch nicht unterstützte Touchscreen machte sich im Alltag an allen Ecken und Enden bemerkbar. War ein Element per direktionaler Navigation nicht zugänglich, gab es keine Möglichkeit, bestimmte Dinge auszuführen. Das waren eine ganze Menge, weswegen ich potentiellen Interessenten die Benutzung von Android 2.3 auf keinen Fall empfehlen kann. Auch gehen so wichtige dinge wie der Market und der Standard-Browser gar nicht zu bedienen. Das Gerät ist jedoch hilfreich, wenn es darum geht, den Firefox zu testen. Wir stellen sicher, dass sämtliche Bedienelemente mit einem D-Pad oder direktionalen Steuerkreuz ansteuerbar sind.

Vor einigen Tagen wurde dann entschieden, dass ich auch unbedingt unter Android 4.0 „Ice Cream Sandwich“ (ICS) testen sollte. Dazu bestellte ich mir ein Samsung Galaxy Nexus. Das ist das Google-Galaxy, das erste Handy mit ICS.

Ice Cream Sandwich bringt im Bereich der Zugänglichkeit einige neue Funktionen mit. Die bemerkenswerteste ist Explore By Touch. Diese erlaubt endlich ein Erforschen des Touchscreens eines Android-handys.

Zur Einstimmung hörte ich mir die Folgen 61 und 62 des TuKSuB-Podcasts an. In diesen zeigt Oliver Nadig aus Marburg am „lebenden Objekt“ die Ersteinrichtung und grundlegende Einstellungen von Android 4.0.

Als das Nexus gestern hier aufschlug, wusste ich also schon, was mich erwarten würde. Und richtig: Die Ersteinrichtung dauerte sehr lange, und mit der doch sehr wacklig unterstützten Standard-Tastatur war es mir nicht möglich, das Kennwort für das Google-Konto richtig einzugeben, so dass ich frustriert die Hilfe meiner sehenden Partnerin annahm. Vergleicht man dies mit iOS, welches nicht nur eine einfachere Möglichkeit zum Einschalten von VoiceOver bietet, sondern auch eine deutlich zuverlässigere Bedienung der Touch-Screen-Elemente erlaubt, ist da noch vieles im Argen im Staate Android! Mein iPhone und iPad habe ich schon mehrfach neu eingerichtet, ohne dass ich dafür irgendeine sehende Hilfe gebraucht hätte.

Auch im laufenden Betrieb war gerade die Standard-Tastatur immer wieder ein schwacher Punkt. Sie verhält sich inkonsistent. Manchmal werden Buchstaben schon durch Anheben des Fingers eingegeben, manchmal muss man den Finger anheben und nochmals extra tippen. Ein Muster ist nicht erkennbar.

Apropos Bedienung: Auch die allgemeine Bedienung des Touchscreens ist bei Android 4.0 wesentlich schwieriger als bei iPhone & Co.

Beim iPhone tippt man ein Element an, oder man zieht den Finger so lange über den Bildschirm, bis das gewünschte Element angesagt wird. Dann kann man entweder den Finger hochnehmen und irgendwo auf dem Bildschirm einen schnellen Zweifach-Tipper mit einem Finger ausführen, oder man lässt den ersten Finger auf dem gesprochenen Element und tippt irgendwo mit einem zweiten Finger aufs Display. Alternativ kann man nach links oder rechts wischen, um die Elemente des Bildschirms in Reihenfolge durchzugehen. Wird das gewünschte Element gesprochen, führt man wie eben beschrieben einen Doppeltipp irgendwo auf dem Display aus, um es zu aktivieren.

Bei Android verwendet man einen Finger zum Ziehen über das Display, bis das gewünschte Element gesprochen wird. Eine Wischgeste wie bei iOS gibt es standardmäßig nicht. Hat man nun das Element gefunden, das man aktivieren möchte, muss man den Finger anheben und genau an der Stelle des Elements wieder einmal aufs Display tippen. Bei genügend großen Elementen klappt dies zumeist. Je kleiner die Elemente jedoch sind, desto schwieriger ist es, genau gezielt zu tippen. Da liegt man auch schon mal gern daneben. Oliver zeigt die Geste an sich und deren Schwierigkeiten auch eindrucksvoll mehrmals im Podcast. Gerade für Einsteiger oder Menschen, die keine super genaue motorische Koordination besitzen, ist dies extrem schwierig und sehr fehleranfällig!

Zur Verbesserung der Situation unter Android 4.0 kann man für die Tastatur einen Ersatz installieren. Die App bei Google Play heißt Eyes-Free Keyboard und ersetzt das Standard Android-Keyboard als Eingabemethode. Dieses Keyboard bringt gegenüber dem Standard-Keyboard die folgenden Verbesserungen für Blinde:

  • Das Tippen ist jetzt zuverlässig. Man setzt einen Finger auf, zieht ihn an die Stelle, an der man den richtigen Buchstaben unterm Finger hat, und hebt ihn dann an. Dies ist vergleichbar mit dem Zehn-Finger-Tippen bei VoiceOver in iOS. Kleiner Schwachpunkt: Erwischt man einen Buchstaben neben dem gewünschten und schiebt den Finger nur leicht in die entsprechende Richtung, wird dies gern mal nicht wahrgenommen. Man muss eine größere Strecke zurücklegen, bevor die Erkennung des Finger-Ziehens wieder „aufwacht“ und die Buchstaben wieder gesprochen werden. Danach sind auch kleine Bewegungen problemlos möglich. Das Tippen wird mit dieser Tastatur jedoch deutlich zuverlässiger als mit der Standard-Tastatur.
  • Man hat ein virtuelles Cursorkreuz zur Navigation, ähnlich dem oben für das HTC beschriebenen Steuerknüppel, zur Verfügung. man schaltet die Modi durch langes Gedrückt-Halten der Lauter-Taste um. Hierdurch kann man durch Elemente navigieren, indem man nach rechts, links, oben oder unten wischt, jedoch muss man dies im unteren Bildschirmdrittel tun.

Weiterhin fällt auf, dass ICS oft denkt, man habe zwei Finger auf dem Display, obwohl es nur einer ist. Dies passiert vorwiegend dann ganz gern, wenn man einen Finger anhebt und schnell woanders wieder aufsetzt. Ist der Bereich, in dem man sich befindet, scrollbar, schaltet Explore By Touch gern mal in den Scroll-Modus. Anscheinend überfährt man durch zu schnelles Wieder-Aufsetzen des Fingers die Erkennung der Software, dass ein Finger das Display verlassen hat. Dies hängt eventuell mit dieser Erklärung auf englisch zusammen, warum Android niemals einen so schnell reagierenden Touchscreen haben wird wie iOS.

Positiv fällt auf, dass Android 4.0 mehr mehr oder weniger zugängliche Apps schon an Bord hat als Android 2.3. Google Play, jetzt einfach Store genannt, funktioniert mit TalkBack, der eingebaute Browser geht zumindest rudimentär, es sei denn, man installiert die Web Scripts aus den Accessibility-Einstellungen, welche im Prinzip ein ChromeVox aufsetzen, dann geht’s etwas besser.

Als Browseralternative kann ich für Spielfreudige unsere eigene Entwicklung der Accessibility in Firefox für Android Native empfehlen. Die mehrsprachige Version der sog. nächtlichen Builds findet man unter diesem Link. Läuft TalkBack, wenn man Nightly startet, wird automatisch die Accessibility eingeschaltet. Explore By Touch geht im Webinhalt noch nicht, aber wenn man das virtuelle D-Pad des Eyes-Free Keyboard verwendet, kann man mit den Richtungen rechts und links durch Webinhalte wandern und sie lesen, ein Tippen aktiviert z. B. einen Link, mit Rauf kommt man zurück in die native Android-Oberfläche des Browsers, wo man die Adresszeile aktivieren kann, einen neuen Tab öffnen, das Menü aufrufen usw. Mit Runter kommt man zurück in den Webinhalt und kann an der Stelle fortsetzen, an der man aufgehört hat zu lesen, vorausgesetzt, man hat keine neue Seite geladen. Den benutze ich jetzt natürlich für alle Browsing-Aufgaben. 😉 Mehr technische Infos über die Art, wie diese Accessibility funktioniert, findet man in diesem englischen Blogeintrag von mir. Firefox für Android läuft auch unter gingerbread, genau wie die Accessibility dies auch tut.

Zum Abschluss noch eine Anmerkung: Das Projekt WebAIM hat am 31.05. die Ergebnisse seiner vierten Screen-Reader-Umfrage veröffentlicht. In diesen ist ganz deutlich ablesbar, dass iOS unter blinden Handynutzern überdurchschnittlich stark vertreten ist. Es wird sogar vermutet, dass Nutzer, die irgendein Feature für Menschen mit Behinderungen in iOS nutzen, 5-10% des gesamten iOS-Markts ausmachen könnten. Android hingegen ist mit einem verschwindend geringen Anteil vertreten, weit unter dem Durchschnitt der übrigen handynutzer. Trotz der fortschritte in Ice Cream Sandwich verwundert dies nicht. Erstens ist ICS noch längst nicht weit verbreitet, während iOS 5 quasi überall läuft, und zum zweiten ist trotz der fortschritte in ICS der Support für viele Apps und die Bedienung für nicht total technisch versierte Anwender so wackelig, dass sich daran auch in absehbarer Zeit nichts ändern wird. Man kann getrost sagen, dass Apple die Schlacht um die zugänglichen mobilen Betriebssysteme ganz klar für sich entschieden hat und dies inzwischen auch einen nicht unerheblichen Teil zu ihren Einnahmen beitragen dürfte. Es steht also nicht zu befürchten, dass Apple sein Engagement in diesem Bereich verringern wird.

Werde ich nach einer persönlichen Empfehlung gefragt, wird diese für Neueinsteiger und Umsteiger älterer Nokia-handys mit Talks oder MobileSpeak immer lauten: Besorg‘ dir ein iPhone. Es ist das betriebssicherste moderne Smartphone, das man als Blinder einsetzen kann. Einziges Manko: Firefox läuft nicht drauf. 🙂 Aber da für Blinde ein betriebssicheres Handy unerlässlich ist, kann ich ein Android-handy guten Gewissens weiterhin nicht empfehlen. Es ist einfach immer noch zu unzuverlässig, gerade für Menschen, die nicht super technisch versiert sind.