自 2025 年 3 月 27 日起,我们建议您使用 android-latest-release
而非 aosp-main
构建 AOSP 并为其做出贡献。如需了解详情,请参阅 AOSP 的变更。
测试和调试
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
在构建 VIA 代码时,建议您考虑以下几点建议,以让测试更轻松。
将代码库设计为独立单元
主要单元包括:
- 触发:启动指令、按下后开始说话 (PTT) 和点按后开始说话 (TTT)。
- 语音识别:侧重于将音频流转换为结构化数据。
- 命令执行:侧重于处理查询并将其转换为操作。
每一层都应可以单独测试,并且彼此独立。添加并记录:
- 可用于将用户查询直接传递到命令执行层的 intent extra。这样一来,原始设备制造商 (OEM) 和集成商可以直接跳过语音识别和测试命令执行(汽车集成)。
- 将预先录制的音频文件传递到语音互动服务的流程,这样即可跳过车辆麦克风,自行测试语音识别功能。
用于测试的模拟器
Android 模拟器是用于开发和测试的卓越平台,因为它可实现主机麦克风与访客 AAOS 实例之间的桥接。

图 1.模拟器测试
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-26。
[null,null,["最后更新时间 (UTC):2025-07-26。"],[],[],null,["# Test and debug\n\nFollowing are several recommendations to consider as you structure your VIA\ncode to make it easier to test.\n\nArchitect the code base into independent units\n----------------------------------------------\n\nPrimary units include:\n\n- **Triggering.** Hotwording, Push-to-Talk (PTT) and Tap-to-Talk (TTT).\n- **Voice recognition.** Focused on converting audio streams into structured data.\n- **Command fulfillment.** Focused into processing a query and translate it into an action.\n\nEach of these layers should be testable on its own and independent from each\nother. Include and document:\n\n- 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.\n- A process to pass prerecorded audio files into the Voice Interaction service, allowing to test voice recognition on its own, skipping the vehicle microphone.\n\nEmulator for testing\n--------------------\n\n[Android\nEmulator](https://developer.android.com/studio/run/emulator) is an excellent platform for development and testing as it provides bridging\nbetween the host microphone and the guest AAOS instance.\n\n**Figure 1.** Emulator testing"]]