Android Accessibility

Android Accessibility
Leveraging APIs to create an accessible experience
Alan Viverette
Charles Chen
Peter Lundblad
T.V. Raman

Quick history
1.6 allowed using system focus
4.0 touch interaction allowed for touching different parts of the screen to have speech feedback
4.1 deterministically interacting with all on-screen content, AccessibilityServices can respond to system-wide touch gestures, AccessibilityServices to interact with on-screen content

Accessibility focus – Providing access to all on-screen content
– Like input focus, but on any view
– Indicated visually with yellow rectangle
– TalkBack and BailleBack can place accessibility focus

Accessibility actions
– move input focus
– move accessibility focus
– activate a view
– scrolling
– moving within text and HTML content

Explore by touch
– navigation gestures: deterministic access to content, services can respond to gestures
– TalkBalk has a number of options
– actionable groups: clickable, focusable, content descriptions, other child items
– readable items without actionable predecessors

Designing for Accessibility focus
– use or extend built-in widgets whenever possible
– make sure it works with d-pad
– actionable items should have readable content

Virtual view hierarchies
– rendering without a view
– handle incoming hover events
– populate outgoing AccessibilityEvents
– use an AccessibilityNodeProvider

Web accessibility
– accessible WebViews for hybrid apps
– without JS read through text
– for complex views you can use AndroVox w/same codebase as ChromeVox
– complete solution including W3C ARIA
– developers need to annotate their code to work properly

Testing for Accessibility
– easy as 1, 2, 3
– it is built in, just turn it on
– Open Settings > Accessibility 1. turn “TalkBack” on, 2. Agree to “Explore by touch” dialog, 3. Turn on “Enhance web accessibility”
– use your app!

Checks to perform
– all tasks can be completed eyes-free
– critical information can be read aloud
– user actions produce meaningful spoken output
– Android linting tool returns no warnings
– Extra credit: all tasks can be completed efficiently!


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s