Skip to content

chaitanya79/Accessibility-Test-Framework-for-Android

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Accessibility Test Framework for Android
----------------------------------------
To help people with disabilities access Android apps, developers of those apps
need to consider how their apps will be presented to accessibility services.
Some good practices can be checked by automated tools, such as if a View has a
contentDescription. Other rules require human judgment, such as whether or not
a contentDescription makes sense to all users.

For more information about Mobile Accessibility, see:
http://www.w3.org/WAI/mobile/

This library collects various accessibility-related checks on View objects as
well as AccessibilityNodeInfo objects (which the Android framework derives from
Views and sends to AccessibilityServices).

Building the Library
--------------------
Use maven to build the library. You will need to install Android 5.0 (API 21) 
or higher to build the library. We used the Maven Android SDK Deployer to build:
https://github.com/mosabua/maven-android-sdk-deployer

Sample Usage
------------
Given a view, the following code runs all accessibility checks on all views in the
hierarchy rooted at that view and throws an exception if any errors are found:

Set<AccessibilityViewHierarchyCheck> checks = getViewChecksForPreset(LATEST);
List<AccessibilityViewCheckResult> results = new LinkedList<AccessibilityViewCheckResult>();
for (AccessibilityViewHierarchyCheck check : checks) {
  results.addAll(check.runCheckOnViewHierarchy(rootView));
}
List<AccessibilityViewCheckResult> errors = AccessibilityCheckResultUtils.getResultsForType(
        results, AccessibilityCheckResultType.ERROR);
if (errors.size() > 0) {
  throw new RuntimeException(errors.get(0).getMessage().toString());
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.4%
  • Protocol Buffer 0.6%