AI News HubLIVE
站内改写2 分钟阅读

AI代理中的本地Android模拟支持

Devin现在支持在本地运行Android模拟器,能够构建、测试和调试Android应用。它通过声明式配置集成,支持ADB命令和计算机视觉交互,可进行端到端测试、UI验证、崩溃调试和多配置测试。

来源Hacker News AI作者: Alextigtig

Devin,这个AI软件工程代理,现在具备了在本地运行Android模拟器的能力。这意味着Devin可以直接在其环境中构建、启动和测试Android应用,而无需依赖外部设备或云服务。这一功能为Android开发者提供了一个全新的自动化测试和开发辅助工具。

核心功能

启用Android模拟支持后,Devin可以处理完整的移动开发循环,包括:

  • 构建与冒烟测试PR:Devin在模拟器上构建并运行应用,在每次PR后点击关键流程,并生成视频记录供开发者审查。
  • 端到端移动测试:在真实的Android栈上测试完整的用户流程,如登录、导航、表单提交和结账,而非使用模拟数据。
  • UI验证:检查不同屏幕尺寸和API级别下的布局、主题和响应性,捕捉重叠元素或文本截断等视觉问题。
  • 调试崩溃与ANR:在模拟器上复现问题,捕获logcat输出,追踪根本原因并推送修复。
  • 跨平台验证:对于React Native、Flutter或Kotlin Multiplatform项目,Devin可以在同一会话中同时测试Android端与Web或桌面构建。
  • 仪器化测试执行:直接在模拟器上运行Espresso或UI Automator测试套件,并报告结果,无需单独的CI设备农场。
  • 多配置测试:通过配置多个AVD,在不同API级别或设备配置下验证应用,提前发现兼容性问题。

工作原理

Android模拟支持基于Devin的声明式配置系统。你需要在蓝图中添加Android SDK和模拟器,Devin的快照系统会构建一个预装所有组件的虚拟机。每个会话都从该快照启动,模拟器立即可用。

在会话中,Devin通过两种方式与模拟器交互:

  • adb(命令行):用于安装APK、运行测试、捕获日志、截图等自动化任务。
  • 计算机视觉(桌面):通过视觉方式点击、滑动、输入文本,适用于端到端UI测试和视觉验证。

模拟器窗口运行在Devin的桌面上,你可以通过Web应用的桌面标签实时观看Devin操作。

设置模拟器

设置模拟器有两种方式:

  1. 让Devin自动设置(推荐):启动会话并指示Devin设置Android模拟,Devin会分析项目、安装必要的SDK组件并配置模拟器。你只需审查并批准蓝图。
  2. 手动编写蓝图:如果你清楚需要的SDK组件和模拟器配置,可以手动编写蓝图,指定初始化步骤和维护命令。

典型的蓝图会安装Android SDK命令行工具、平台工具、构建工具、目标API级别的平台、模拟器及系统镜像。建议使用x86_64系统镜像以获得最佳性能。

使用模拟器

你可以随时用自然语言指示Devin进行测试,例如:“在Android模拟器上构建并运行应用”、“测试登录流程并发送录制”。Devin会启动模拟器,构建应用,并根据任务选择使用adb或计算机视觉进行交互。

该功能与Devin的测试与录制工作流无缝集成。创建PR后,Devin会提供测试选项,构建并运行应用,执行测试计划,并生成带注释的视频录制。开发者可以观看录制并放心合并。

此外,Devin会根据测试经验自动创建或更新技能(Skill),记录如何构建、启动和测试Android应用,从而在后续会话中节省时间并保证一致性。

蓝图示例

文档中提供了针对原生Android(Kotlin/Java + Gradle)和React Native的可复制蓝图模板,包含初始化脚本和维护命令。开发者可以直接粘贴使用。

总之,Devin的Android模拟支持将AI代理的能力延伸到了移动开发领域,为自动化测试、调试和验证提供了强大的本地化解决方案。