Android Fundamentals: Accessibility

You can increase the reach of your Android app and make your app more user-friendly to all kinds of users by building it to take advantage of Android's accessibility features. This course will teach you how to do just that.
Course info
Rating
(11)
Level
Intermediate
Updated
Nov 15, 2016
Duration
3h 3m
Table of contents
Course Overview
Understanding Accessibility Basics
Making Your App Accessible
Designing for Accessibility
Creating Accessible CustomViews
Testing Accessibility
Description
Course info
Rating
(11)
Level
Intermediate
Updated
Nov 15, 2016
Duration
3h 3m
Description

Many users have physical limitations that may make seeing the device display or interacting with the touchscreen difficult. Android provides a number of accessibility features and services and this course, Android Fundamentals: Accessibility, will serve as your guide to including these features in your apps. You'll start with an introduction to the goals of accessibility and how Android handles accessibility. Then, you'll get started making apps accessible by incorporating support for non-touch navigation and view descriptions, as well as seeing how to design and create apps that provide a single high-quality experience that works equally well for users with or without accessibility needs. You'll also get to see how to add some important accessibility features, such as Talkback support and d-pad navigation, to your custom views. Finally, you will go over the important relationship between testing and accessibility. By the end of this course, you'll be better able to build apps in such a way that they will be accessible to all users.

About the author
About the author

Jim Wilson is president of JW Hedgehog, Inc., a consulting firm specializing in solutions for the Android, iOS, and Microsoft platforms. Jim has over 30 years of software engineering experience, with the past 15 years heavily focused on creating mobile device and location-based solutions.

More from the author
More courses by Jim Wilson
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi, everyone, my name is Jim Wilson. Welcome to my course Android Fundamentals: Accessibility. I'm president of JW Hedgehog, Incorporated. I've had the good fortune to have been a professional software developer now for over 30 years. As part of that experience, I've been developing Android applications since the Android platform's original release back in 2008. Over most of that time, I, like many developers, created Android Apps giving little thought to the issue of accessibility. But this all changed for me when my wife suddenly and unexpectedly lost her sight and was left functionally blind for several months. Fortunately, surgery has restored some of her vision, but she still deals with significant visual challenges. This experience, if you'll pardon the pun, opened my eyes to the importance of developing apps with accessibility in mind. Some users may be blind, some users may experience low vision or colorblindness, and some users may have difficulty touching the screen. Millions upon millions of users experience one or more of these issues, making it essential that we build apps that effectively meet these accessibility needs. The good news is is that Android provides all the features we need to build easy-to-use accessible apps. Many of the same features we use to create accessible apps also help to make our apps more usable on non-traditional Android devices, such as Android TVs and gaming consoles. Understanding accessibility is such a critical part of creating modern Android applications that accessibility is a core competency required to earn Google's Android Associate Developer certification. So the major topics we cover include accessibility design considerations, working with Talkback and other accessibility services, supporting navigation devices, adding accessibility hooks to a custom view, and testing app accessibility coverage. By the end of this course, you'll be ready to begin building rich Android apps that work well for users both with and without accessibility needs. To get the most out of this course, you should already understand the basics of Android programming. I hope you'll join me as we learn how to create accessible Android apps with the course Android Fundamentals: Accessibility at Pluralsight.

Understanding Accessibility Basics
Welcome to the course, Android Fundamentals Accessibility. This is our first module, which is understanding accessibility basics. My name is Jim Wilson. In this module the first thing we'll take look at is the goal of accessibility. We'll then take a look at specifically at how Android accessibility works, and then we'll finish up by taking a look at our approach to understanding accessibility.

Making Your App Accessible
Welcome to the next module of the Pluralsight course, Android Fundamentals Accessibility. In this module, we talk about making your app accessible. My name is Jim Wilson. So in this module, we're first going to take a look at how we can get started bringing accessibility into our applications. Then we're going to look at the idea of non-touch interaction and how we can bring that into our apps. And then finally, implementing view descriptions.

Designing for Accessibility
Welcome to the next module of the Pluralsight course, Android Fundamentals, Accessibility. In this module, we talk about how to make accessibility a central part of application design. My name is Jim Wilson. We'll start out with the idea of achieving accessibility. What are things we'll need to consider, in order to build apps that are truly accessible? We'll look at the idea of choosing accessibility-friendly colors, other words how do we choose colors that are easy for everyone to see? The use of color when providing feedback. We know that color is a very powerful way to provide user feedback but there are cases where color may not be enough so we'll look at those issues. We'll talk about touch target and text sizing. How do we size things appropriately so it's easy for a user to actually touch the things on the screen, as well as how do we actually design our app so that if a user has scaled their font sizes up, that our app respects that. We'll then look at the general idea of accessibility within ViewGroups, and we'll do that by looking specifically at the challenges that RecyclerView creates for accessibility. And then we'll wrap up with the idea of announcing app context changes. in other words, when your app moves from one application context to another, if you're doing things outside of what's handled by default in the accessibility features of Android, how do we provide users with that information. In our next clip, we'll get started with looking at the idea of how do we achieve accessibility in our application design.

Creating Accessible CustomViews
Welcome to the next module of the Pluralsight course, Android fundamentals accessibility. In this module, we talk about creating accessible custom views. My name is Jim Wilson. To get started, we'll first take a quick one minute review of how android accessibility works. We'll then take a look at a custom view that we're going to use throughout this module to explore the issue of custom views and accessibility. We'll then take a look at why a custom view that's written normally doesn't support accessibility. From there, we'll take a look at the core accessibility types and then we'll take into an important class called ExploreByTouchHelper. Class is important for two reasons. One is that it greatly simplifies the job of adding accessibility to a custom view. It's also an important class on the Android Associate Developer exam, so if you're thinking about taking an exam, you want to make sure you understand how to use that class. We'll then look at how to use ExploreByTouchHelper to provide Talkback support, and then we'll finish off by looking at how to use ExploreByTouchHelper to implement d-pad support.

Testing Accessibility
Welcome to the next module of the Pluralsight course, Android Fundamentals: Accessibility. In this module, we'll talk about testing accessibility. My name is Jim Wilson. In this module, first we're going to take a look at the idea of how we can automate the testing of our applications accessibility behaviors, then look at the options we have for configuring automated accessibility testing. We'll then look at the important role that manually testing application accessibility plays, and then we'll wrap up with a discussion of the UI Automator testing tool, and the role that accessibility plays in it.