SlideShare a Scribd company logo
ANDROID ACCESSIBILITY
 Universal design
 Talkback, Explore By Touch, Accessibility Settings
 Use recommended touch target sizes: 48 dp; more for kids
 Label visual UI elements meaningfully
 Provide alternatives to affordances that time out
 Use standard framework controls or enable TalkBack for
custom controls
 Try it out yourself
ACCESSIBILITY DESIGN
 For visually and hearing impaired
 Talkback and Explore by Touch
 For UI controls: android:contentDescription
 For custom controls extending View: Use APIs
 EditText Use android:hint
 Focus navigation android:focusable; Controlling focus order
 Custom Views: handle KEYCODE_DPAD_CENTER; populate
Accessibility events(dispatchPopulateAccessibilityEvent(),
onPopulateAccessibilityEvent(),
onInitializeAccessibilityEvent()); sendAccessibilityEvent(Acces
sibilityEvent.TYPE_VIEW_TEXT_CHANGED); Provide customized
accessibility context (the getAccessibilityNodeProvider(),
AccessibilityNodeProvider); Handling custom touch
events(onTouchEvent(MotionEvent))
UI ACCESSIBILITY
 android:contentDescription,setContentDescription(CharSeque
nce), android:focusable, focusorder, Custom view controls, No
audio-only feedback(a notification or haptic feedback), test
directional controls, test eyes free
 Avoid having user interface controls that fade out or
disappear after a certain amount of time.
 android:hint, virtual view hierarchy, Custom controls, Prompts
for related controls, video captioning and subtitles,
announceForAccessibility(CharSequence), Sets of small
controls with one contentDescription, no accessibility for
decorative images
ACCESSIBILITY DEVELOPER CHECKLIST
 uses-permission BIND_ACCESSIBILITY_SERVICE
 accessibility_service_config.xml accessibility options for
service
 android:packageNames service will handle events for classes
in this folder
 android:accessibilityEventTypes events handled
 Extend AccessibilityService class
 Event details: AccessibilityEvent.getRecordCount(),
AccessibilityEvent.getSource()
 Accessibility Focus
ACCESSIBILITY SERVICE
 Directional Controls
 TalkBack audio prompts
 Enable Explore by Touch
 All actionable controls should be min 48dp
 Enable talkback, verify gestures work
 Audio feedback must have alternate feedback(notification,
haptic)
TESTING
 android:focusable="false”
 android:focusableInTouchMode="false”
 android:hapticFeedbackEnabled="false”
 android:contentDescription="@null”
 setContentDescription("u00A0");
ETC

More Related Content

PDF
Android accessibility for developers and QA
PPTX
Developing accessible android applications
PDF
Android Accessibility - The missing manual
PPTX
Android Accessibility
PPTX
Android programming basics
PDF
Android Accessibility - Droidcon London
PDF
Write once, ship multiple times
PPTX
I/O Rewind 215: What's new in Android
Android accessibility for developers and QA
Developing accessible android applications
Android Accessibility - The missing manual
Android Accessibility
Android programming basics
Android Accessibility - Droidcon London
Write once, ship multiple times
I/O Rewind 215: What's new in Android

What's hot (20)

PDF
Write once, ship multiple times
PPT
Beginning Native Android Apps
PDF
What's new in android 4.4 - Romain Guy & Chet Haase
PPTX
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
PDF
Training Session 2 - Day 2
DOC
Day 4: Activity lifecycle
PDF
The Mighty Power of the Accessibility Service - Guy Griv, Pepper
PPTX
iOS app dev Training - Session1
PPTX
GDG GeorgeTown Devfest 2014 Presentation: Android Wear: A Developer's Perspec...
PDF
Efficient Image Processing - Nicolas Roard
PPTX
Android 3
PDF
Being Epic: Best Practices for Android Development
PPTX
Android application-component
PDF
Android Screen Containers & Layouts
PDF
Android appwidget
DOCX
Android xml-based layouts-chapter5
PPTX
Android Widget
PDF
AI: Mobile Apps That Understands Your Intention When You Typed
PDF
KKBOX WWDC17 UIKit - QQ
PPTX
Mobile application development
Write once, ship multiple times
Beginning Native Android Apps
What's new in android 4.4 - Romain Guy & Chet Haase
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
Training Session 2 - Day 2
Day 4: Activity lifecycle
The Mighty Power of the Accessibility Service - Guy Griv, Pepper
iOS app dev Training - Session1
GDG GeorgeTown Devfest 2014 Presentation: Android Wear: A Developer's Perspec...
Efficient Image Processing - Nicolas Roard
Android 3
Being Epic: Best Practices for Android Development
Android application-component
Android Screen Containers & Layouts
Android appwidget
Android xml-based layouts-chapter5
Android Widget
AI: Mobile Apps That Understands Your Intention When You Typed
KKBOX WWDC17 UIKit - QQ
Mobile application development
Ad

Similar to Android accessibility (20)

PPTX
Compose In Practice
PDF
Droidcon 2013 accessible android apps sharma_google
PDF
Android accessibility till_kitkat_nov2013_andevcon
PDF
Poster Aegis poster android_conf2011
PDF
Empower Inclusion Through Accessible Java Applications
PDF
Android development for iOS developers
PPTX
Developing a Modern Mobile App Strategy
PDF
Top Tips for Android UIs - Getting the Magic on Tablets
PPTX
Design Strategy for Cross-Device User Experience
PDF
What's new in Android Lollipop
PDF
See Me, Feel Me, Touch Me, Heal Me
PPT
Android gui framework
PPTX
Android Development
PDF
Android accessibility 9th_april_droidcon
PDF
TK2323 Lecture 1 - Introduction to Mobile Application.pdf
PDF
Mobile Application Development with JUCE and Native API’s
PPTX
Android development training
PPTX
Languor
PDF
Developing for Google Glass
PDF
Break Timer: Android-wear introduction and application case-study
Compose In Practice
Droidcon 2013 accessible android apps sharma_google
Android accessibility till_kitkat_nov2013_andevcon
Poster Aegis poster android_conf2011
Empower Inclusion Through Accessible Java Applications
Android development for iOS developers
Developing a Modern Mobile App Strategy
Top Tips for Android UIs - Getting the Magic on Tablets
Design Strategy for Cross-Device User Experience
What's new in Android Lollipop
See Me, Feel Me, Touch Me, Heal Me
Android gui framework
Android Development
Android accessibility 9th_april_droidcon
TK2323 Lecture 1 - Introduction to Mobile Application.pdf
Mobile Application Development with JUCE and Native API’s
Android development training
Languor
Developing for Google Glass
Break Timer: Android-wear introduction and application case-study
Ad

More from Puneet Kumar (10)

PPTX
Quick Scala
ODP
Robotics using EV3 Introduction
PPTX
Chess1
PPTX
Nagios
PPTX
System adm
PPTX
PPTX
PPTX
PPTX
Bitcoin
PPT
Html5 CSS3
Quick Scala
Robotics using EV3 Introduction
Chess1
Nagios
System adm
Bitcoin
Html5 CSS3

Recently uploaded (20)

PPTX
Construction Project Organization Group 2.pptx
PPTX
UNIT 4 Total Quality Management .pptx
DOCX
573137875-Attendance-Management-System-original
PDF
Digital Logic Computer Design lecture notes
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
Well-logging-methods_new................
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPT
Project quality management in manufacturing
PPTX
Internet of Things (IOT) - A guide to understanding
PPTX
Geodesy 1.pptx...............................................
PPTX
CH1 Production IntroductoryConcepts.pptx
PPT
introduction to datamining and warehousing
PPTX
OOP with Java - Java Introduction (Basics)
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PDF
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
Construction Project Organization Group 2.pptx
UNIT 4 Total Quality Management .pptx
573137875-Attendance-Management-System-original
Digital Logic Computer Design lecture notes
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Well-logging-methods_new................
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
Project quality management in manufacturing
Internet of Things (IOT) - A guide to understanding
Geodesy 1.pptx...............................................
CH1 Production IntroductoryConcepts.pptx
introduction to datamining and warehousing
OOP with Java - Java Introduction (Basics)
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
UNIT-1 - COAL BASED THERMAL POWER PLANTS
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...

Android accessibility

  • 2.  Universal design  Talkback, Explore By Touch, Accessibility Settings  Use recommended touch target sizes: 48 dp; more for kids  Label visual UI elements meaningfully  Provide alternatives to affordances that time out  Use standard framework controls or enable TalkBack for custom controls  Try it out yourself ACCESSIBILITY DESIGN
  • 3.  For visually and hearing impaired  Talkback and Explore by Touch  For UI controls: android:contentDescription  For custom controls extending View: Use APIs  EditText Use android:hint  Focus navigation android:focusable; Controlling focus order  Custom Views: handle KEYCODE_DPAD_CENTER; populate Accessibility events(dispatchPopulateAccessibilityEvent(), onPopulateAccessibilityEvent(), onInitializeAccessibilityEvent()); sendAccessibilityEvent(Acces sibilityEvent.TYPE_VIEW_TEXT_CHANGED); Provide customized accessibility context (the getAccessibilityNodeProvider(), AccessibilityNodeProvider); Handling custom touch events(onTouchEvent(MotionEvent)) UI ACCESSIBILITY
  • 4.  android:contentDescription,setContentDescription(CharSeque nce), android:focusable, focusorder, Custom view controls, No audio-only feedback(a notification or haptic feedback), test directional controls, test eyes free  Avoid having user interface controls that fade out or disappear after a certain amount of time.  android:hint, virtual view hierarchy, Custom controls, Prompts for related controls, video captioning and subtitles, announceForAccessibility(CharSequence), Sets of small controls with one contentDescription, no accessibility for decorative images ACCESSIBILITY DEVELOPER CHECKLIST
  • 5.  uses-permission BIND_ACCESSIBILITY_SERVICE  accessibility_service_config.xml accessibility options for service  android:packageNames service will handle events for classes in this folder  android:accessibilityEventTypes events handled  Extend AccessibilityService class  Event details: AccessibilityEvent.getRecordCount(), AccessibilityEvent.getSource()  Accessibility Focus ACCESSIBILITY SERVICE
  • 6.  Directional Controls  TalkBack audio prompts  Enable Explore by Touch  All actionable controls should be min 48dp  Enable talkback, verify gestures work  Audio feedback must have alternate feedback(notification, haptic) TESTING
  • 7.  android:focusable="false”  android:focusableInTouchMode="false”  android:hapticFeedbackEnabled="false”  android:contentDescription="@null”  setContentDescription("u00A0"); ETC

Editor's Notes

  • #3: http://developer.android.com/design/patterns/accessibility.html
  • #4: http://developer.android.com/guide/topics/ui/accessibility/index.html
  • #5: http://developer.android.com/guide/topics/ui/accessibility/checklist.html
  • #6: http://developer.android.com/guide/topics/ui/accessibility/services.html