This is the CSE340-SP19 final website. You may be looking for the current version of the class

EX4: Accessibility

Last revised: 12:16 PM Tuesday, May 14th, 2019
Assigned: Thursday, May 9, 2019

Android Goals:

  • Basics of Android assistive tools
Due: 11:59 PM Wednesday, May 15, 2019

HCI Goals:

  • App accessibility
  • Understanding of different accessibility issues
  • Simple repairs to accessibility issues

Part 1

Tasks:

Accessibility is an important part of any app. Whether you are developing a new app or adding features to an existing one, it is important to consider the accessibility of your app’s components. Please read Table 2 on page 8 of Epidemiology as a Framework for Large-Scale Mobile Application Accessibility Assessment.

Please watch this quick video to learn how visually-impaired users interact with Android applications. The video also offers some tips on ensuring your app is compatible with assistive tools.

Consider the layout app (you will not be using your layout assignment during this assignment) that you worked on earlier this quarter. The image does not have contentDescription property. Google’s Accessibility Scanner will classify this as “Item Label” error (defined in the paper above). Therefore, screen reader cannot read the alternative text of the image to people with visual impairments.

Screenshot of an image without contentDescription property in layout editor

The goal of part 1 of the assigment is to identify at least 10 accessibility issues within the given app. Our example app may not have ALL issues in the table. Please use the Accessibility Scanner to detect defects in the app. For your reference, we identified at least 11 errors in the app. It is helpful to have basic understanding about Talkback and Switch Access, two built-in assistive tools on Android.

The Accessibility Scanner is decent with its suggested fixes, but if it is not obvious, for each element type, do some research to find all the attributes that help with accessibility.

Report

Your report should be structured as follows:

Title: Accessibility Report

Overview (1 paragraph)

Describe your experience using assistive tools while testing the accessibility of the app before and after fixing issues.

Issues (table)

For each issue that you identify within the app, document the following details:

Inaccessible UI element Issue type Fix

You can use the XML id for the element, or describe it very briefly (~3 words). Issue type should be drawn from the list in the reading. The fix should provide a brief description (1 sentence or so) of what you did. Here’s an example: "Remove the android:contentDescription"

Resources

Part 2

Tasks:

For each issue that you identified in the app, please repair it by modifying code or xml layout file. For reference, in the sample solution we ran the app through the Accessibility Scanner and identified and fixed 11 issues. For example: To repair “Item Label” error above, we can either

All of these changes only require modifying existing xml attributes or adding new ones; so it is not a programming heavy assignment and should only take you a couple of hours at most.

Turn-in

Submission Instructions

Part 1

Part 2

You will turn in the following files via GitGrade:

- MainActivity.java
- app_bar_main.xml
- content_main.xml
- nav_header_main.xml
- strings.xml
- colors.xml

Follow these instructions to submit part 2 of your assignment

Grading (10pts)