Code Monkey home page Code Monkey logo

accessibility-insights-for-android-service's Introduction

Accessibility Insights for AndroidTM Service

Build Status

Accessibility Insights for Android Service is a service for Android that helps in assessing the accessibility of Android applications.

Building the code

Prerequisites

  • Download and install Android Studio

    • If you plan on using Android Studio's emulator, make sure "Android Virtual Device" is checked in the download setup dialog
    • Selecting the standard installation (recommended) will also install Android SDK tools
  • Emulator (optional, if not using a physical device):

    • From Android Studio, start Android Virtual Device (AVD) Manager: Tools > AVD Manager
    • Select Create Virtual Device. This may require downloading the selected system image. If possible, select a newer device, such as Pixel 3 API 29 .

Note: We do not recommend using a personal Android device for testing and development; we recommend using a testing device or emulator. Software under development may not yet be fully secure, and many development tools require permissions that could present a potential risk to your device and data.

Setup (Windows, Linux, Mac)

While the instructions for Windows, Linux, and Mac are the same, the instructions below are written with Windows-style file paths.

  1. Fork and clone the repository

  2. Open the project with Android Studio

    • This must be the Android project AccessibilityInsightsForAndroidService inside the repo, not the top-level accessibility-insights-for-android-service folder
  3. The project will automatically sync and build

  4. Change the launch options in Android Studio:

    • Under the Run menu, select Edit configurations...
      • Ensure that the app is selected in the left navigation pane
      • Under General > Launch Options, change Launch from "Default Activity" to "Nothing"
      • Select Apply, then Ok
  5. Run the app from Android Studio (this will install the APK onto the emulator). The app won't show up in the list of programs--it shows up as a downloaded accessibility service. It will be off by default. To activate it:

    • Open the Settings app in the emulator. If you have trouble opening the emulator, see Unable to start emulator under Known Issues below
    • Scroll down and select Accessibility
    • Select "Accessibility Insights for Android Service" under Downloaded services
    • Toggle on Use service to enable the service
    • Select Allow on the resulting dialog to grant the necessary permissions
    • An "Exposing sensitive info during casting/recording" dialog should appear. Select Start now

Known issues

Gradle sync fails

Restarting Android Studio and waiting for everything to load before building the project could solve the issue

SDK setup issues
  • Error message: Failed to install the following Android SDK packages as some licences have not been accepted.

    • Select the "Install missing SDK package(s)" link at the end of the error message. Follow the prompt to agree to license terms and install missing SDK tools
Unable to start emulator
  • (Windows) Error message: Intel HAXM is required to run this AVD. VT-x is disabled in BIOS. Enable VT-x in your BIOS security settings (refer to documentation for your computer).

    • Virtualization might not be enabled on your computer. To check if it is, open Task Manager and select the Performance tab. If "Virtualization" is disabled, follow these instructions to enable virtualization in your BIOS. The option to enable virtualization might be under "Security settings"

    • Sometimes the issue is caused by Hyper-V blocking other virtualization apps, so you could also try to turn off Hyper-V.

  • (Linux) Error message: KVM is required to run this AVD. /dev/kvm device: permission denied. Grant current user access to /dev/kvm

    • Open a Terminal window and run the following:
      sudo apt install qemu-kvm
      sudo adduser $USER kvm
    • Restart your machine

Reporting security vulnerabilities

If you believe you have found a security vulnerability in this project, please follow these steps to report it. For more information on how vulnerabilities are disclosed, see Coordinated Vulnerability Disclosure.

Contributing

All contributions are welcome! Please read through our guidelines on contributions to this project.

Code of Conduct

Please read through our Code of Conduct to this project.

Android is a trademark of Google LLC.

accessibility-insights-for-android-service's People

Contributors

ada-cat avatar dbjorge avatar devaradhanm avatar jalkire avatar karanbirsingh avatar microsoftopensource avatar pownkel avatar waabid avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.