Starting March 27, 2025, we recommend using android-latest-release instead of aosp-main to build and contribute to AOSP. For more information, see Changes to AOSP.

Test and debug

Following are several recommendations to consider as you structure your VIA code to make it easier to test.

Architect the code base into independent units

Primary units include:

  • Triggering. Hotwording, Push-to-Talk (PTT) and Tap-to-Talk (TTT).
  • Voice recognition. Focused on converting audio streams into structured data.
  • Command fulfillment. Focused into processing a query and translate it into an action.

Each of these layers should be testable on its own and independent from each other. Include and document:

  • Intent extras that can be used to pass user queries directly to the command fulfillment layer. This would allow OEMs and integrators to skip the voice recognition and test command fulfillment (car integrations) directly.
  • A process to pass prerecorded audio files into the Voice Interaction service, allowing to test voice recognition on its own, skipping the vehicle microphone.

Emulator for testing

Android Emulator is an excellent platform for development and testing as it provides bridging between the host microphone and the guest AAOS instance.

Emulator testing

Figure 1. Emulator testing

Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Last updated 2025年12月02日 UTC.