Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois...

41
Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana-Champaign

Transcript of Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois...

Page 1: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

Mobile Accessibility, Challenges, and Best Practices

Hadi Rangin & Jim HahnUniversity of Illinois at Urbana-

Champaign

Page 2: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

Introduction

• Strong tendency in higher ed to go mobile• Users with disabilities can benefit from mobile

apps substantially if they are accessible– Travel: Trip tracker…

• Special Assistive Apps– Voice recognition software, color finder…

Page 3: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

Goals of this presentation

• Share some of accessibility/usability problems with common apps

• Derive design & implementation Best Practices from our findings

• Our knowledge and expertise is very limited so we need to do it collectively

• Promote for the Best practices in our campus

Page 4: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

Discussion/demonstration of selected mobile apps on Ipad such as Mail, Contacts, Skype, etc.

Common Accessibility issues with mobile apps

Page 5: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

Samples drawn from UGL4EVA app

Page 6: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

Dashcode

• Dashcode is a developer environment that allows you to apply web skills to mobile app design. We will model a few strategies for making apps accessible, while also pointing out limitations in this area.– In other words, some areas may be fixed in web

based ways, while others using Xcode can be addressed in the Native developer environment.

Page 7: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

Xcode

• Xcode is the native development environment. It uses C, mostly Objective C but also C++. You can also work from Apple provided templates here as well.

Page 8: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

The Xcode Developer Environment

Page 9: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

1. Specify a button as button

• Problem: the text string doesn’t always indicate it is a button. Convey that action will occur.

Page 10: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Example:

Page 11: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Fix: use a <role> tag in the HTML of the appVoice Over will recognize this as a button with this additional tag used inside of Dashcode<div role="button"

Page 12: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

2. If a button is not available make sure it is dimmed or invisible to VO

• Problem: Voice over is picking up a button that should be unavailable.

Page 13: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Example:

Page 14: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Fix: Explore turning off this element using CSS for the first level of the browser or use HTML disabled attribute.

<li><input type="button" value="button 1"></li>

<li><input disabled type="button" value="button 1"></li>

• A few parts of the Dashcode templates are not accessible out of the box.

Page 15: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

3. Video Element

• Problem: voice over is reading “next track,” but there is no next track, it will actually forward the video, to the end, if used.

Page 16: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Example: in UGL4EVA we have one video to play, however Voice Over reads this as “next track”

Page 17: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Fix: Use a video plugin that we can modify track controls. In Dashcode, we are unable to make controller modifications, since this is calling a QuickTime plugin.

• We also tested HTML5 video element and are seeing the same behavior.

• In Xcode we advise leaving out controller elements if there isn’t a “next track.”

Page 18: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

Multimedia Accessibility

• See also: http://www.w3.org/html/wg/wiki/MultimediaAccessibilty

Page 19: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

4. How do users know what items are related?

• Problem: how does Voice Over know what items go together

Page 20: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Example: There are a number of links here, and Voice Over reads “list start” where the grouping begins.

Page 21: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Fix: use a list element to group portions of the page together and provide a heading element preceding that indicates the purpose of list.

Page 22: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

5. Table index outside the navigator

• Problem: This index is not read by Voice Over.

Page 23: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Example

Page 24: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Fix: Designers should make certain the index of letters is accessible from the page navigation. Either make the table index (Skype) in a tab order (the user can access from Keyboard) or use alphabetical navigation with headings (example: Apple contact List).

Page 25: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

6. Screen Reader View and Visual View Not Consistent

• Problem: Voice Over is reading portions of the page that are not displayed.

Page 26: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Example: see Page Once, Al Jeezera Live, AA.com

Page 27: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Fix: Developers should test the VoiceOver functionality for when portions of the page are hidden from view, since screen readers will be able to pick up portions of this.

Page 28: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

7. In Plain Text app menu, if you need to activate a menu…

• Problem: Menu activation requires a user tap in the screen, but Voice Over has no way to indicate this

Page 29: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Example: Plain Text example

Page 30: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Fix: Avoid such events. Dedicate a funtion on the interface. Make sure we have a fixed or dedicated menu for this. Make the function keyboard accessible.

Page 31: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

8. Page title -

• Problem: Identify the page with the proper heading.

Page 32: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Example:

Page 33: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Fix: main app home screen modified to indicate it is a video tour application

Page 34: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

9. Tab order when using a table layout

• Problem: if you design with a table layout, the order of the items may be unintentionally confusing.

Page 35: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Example: AA.com mobile app is a good example

Page 36: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Fix: Consider using a layout that will be easily navigated by a keyboard.

Page 37: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

10. Proper Form Control

• Problem: Lack of form labels

Page 38: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Example: Use radio button if you can’t select more than 1 item. Use checkbox to enable selection of more than one item.

Page 39: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

• Fix: Use label for the form control. Similar to HTML technique.

Page 40: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

Conclusion

• Process: test your beta mobile apps with Voice Over before launching to App Store

Page 41: Mobile Accessibility, Challenges, and Best Practices Hadi Rangin & Jim Hahn University of Illinois at Urbana- Champaign.

ConsultedSafari HTML Reference:http://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/SafariHTMLRef.pdf

See section: supported accessibility roles, p. 105