告别 IDE?Android CLI 来了,开发进入 AI Agent 时代

近日,Google 悄然发布了一个工具------Android CLI 。它是 Google 为即将到来的 Agent-first 开发时代而专门打造的 Android 开发"前门"。

在 Google 内部实验中,使用 Android CLI 的 Agent 工作流:

  • Token 消耗减少超过 70%
  • 任务完成速度提升 3 倍

这意味着 AI Agent 写 Android 代码这件事,正在从【能用】成【好用】。

今天这篇文章,我带你把 Android CLI 从里到外拆一遍


一、什么是 Android CLI?

1.1 基础概念

  • 定义:Android CLI 是 Google 推出的命令行界面工具,定位为"从终端进行 Android 开发的主要接口"
  • 作用:专为 AI Agent 驱动的开发工作流(Agentic Workflow)设计。

1.2 定位

  • 命令行界面:不是 GUI,不是 IDE 插件,是纯 CLI
  • 主要接口:Google 希望它成为终端场景下 Android 开发的"默认入口"
  • AI Agent 驱动 :它的第一目标用户不是人类开发者,而是 AI Agent

1.3 核心特点

  • 与模型无关
  • 内置官方Skills、核心知识库
  • 封装sdkmamager、avdmanager、Gradle等Android开发核心配置

1.4 与传统工具的区别

很多人第一反应是:这不就是 adb + sdkmanager + avdmanager 的合体吗?

不是。

Google 在官方博客中用了一个很形象的描述:

Android CLI 是 Agent 进入 Android 开发工作流的稳定前门(stable front door)

下面是两者的对比

维度 传统工具(adb/sdkmanager/avdmanager) Android CLI
设计目标 人类开发者手动操作 AI Agent 自动化执行
输出格式 人类可读的文本 结构化数据(JSON),方便机器解析
操作粒度 细粒度、需要组合多个命令 高层抽象、一条命令完成一个完整任务
环境管理 需要手动配置 SDK 路径、环境变量 自动检测、按需下载、最小化配置
知识集成 内置 Knowledge Base + Skills 系统
模型绑定 不涉及 模型无关,兼容任何 AI Agent

二、为什么需要 Android CLI?

痛点 1:传统工具对 AI Agent 极不友好

如果你尝试过用 Claude Code 或 Gemini CLI 来搭建一个 Android 项目,你一定经历过这种痛苦:

  1. Agent 尝试运行 sdkmanager --install "platforms;android-35"
  2. 命令失败------因为 sdkmanager 路径没配置
  3. Agent 尝试找 SDK 路径,在 ANDROID_HOMEANDROID_SDK_ROOT、各种默认路径之间反复横跳
  4. 终于找到了,结果 license 没 accept
  5. accept 之后,又发现系统镜像不对......

这个过程,人类开发者可能 10 分钟就搞定了(因为你知道该去哪看、该改什么配置)。但对 AI Agent 来说,每一步的"猜测"都是 Token 的浪费,每一次的错误恢复都是时间的消耗

痛点 2:AI 不知道"当下的最佳实践"

通用 LLM 的训练数据有截止日期。当你让 AI 帮你创建一个 Android 项目时,它可能:

  • 还在用 AGP 8.x 的写法,而不是最新的 AGP 9
  • 还在用 kapt,而不是 KSP
  • 还在用 Navigation 2,而不是 Navigation 3
  • 模板代码里用的还是半年前的依赖版本

结果就是:AI 帮你写的代码,从第一行开始就是"技术债"。

痛点 3:Agent 时代需要新的开发范式

当 AI Agent 成为"第一手实现者",开发流程的瓶颈不再是"写代码的速度",而是:

  • Agent 能否正确理解项目结构?
  • Agent 能否快速获取最新的 API 文档?
  • Agent 能否遵循官方推荐的最佳实践?
  • Agent 能否高效地管理开发环境?

Android CLI 就是 Google 对这四个问题的系统性回答。

直观示例

对于同样的任务:创建一个新项目并部署到模拟器运行,传统工具跟Android CLI的使用区别:

省时省步骤,还准确,这也是 使用Android CLI 的Token 减少 70% 的根本原因------减少了 Agent 理解和协调底层工具的认知开销。


三、核心功能详解

主要包括:

  • android create ------ 秒级创建项目
  • android sdk install ------ 按需精简安装
  • android emulator ------ 模拟器管理
  • android run ------ 部署应用
  • android describe ------ 项目结构分析
  • android screenandroid layout ------ UI 检测

3.1 android create ------ 秒级创建项目

ini 复制代码
android create --output=~/projects/MyApp

一条命令,生成一个完整的 Android 项目。

这不是简单的 mkdir + 文件复制。背后发生的事情是:

  1. 从 Google 官方维护的模板库拉取最新项目模板
  2. 默认使用 empty-activity-agp-9 模板------AGP 9、KSP、最新 Compose 版本全部预配置
  3. 项目结构遵循 Google 推荐的最佳实践
  4. 所有依赖版本都是当前最新稳定版

你也可以指定模板和项目名:

ini 复制代码
# 查看所有可用模板
android create list

# 使用指定模板创建项目
android create --name=MyShoppingApp --output=~/projects/MyShoppingApp empty-activity-agp-9

# 不想真创建?先预览一下
android create --dry-run --output=~/projects/MyApp

与传统方式的对比

用 Android Studio 创建项目,你需要打开 IDE → New Project → 选模板 → 填信息 → 等待 Gradle Sync(可能要好几分钟)。

用 Android CLI?3 秒。 而且产出的项目模板比 Android Studio 的模板更"现代",因为它直接由 Google 工具团队维护和更新。

3.2 android sdk install ------ 按需精简安装

bash 复制代码
# 只安装你需要的组件
android sdk install platforms/android-35 build-tools/36.1.0

# 指定版本
android sdk install platforms/android-34@2

# 从 Canary 渠道安装
android sdk install --canary system-images/android-35/google_apis/x86_64

# 强制降级
android sdk install --force platforms/android-33@1

传统的 SDK 管理痛点是什么?全量安装。很多开发者的 SDK 目录里躺着从 Android 21 到 35 的全套 Platform,外加各种早已用不到的 Build Tools 版本,占了几十个 GB。

Android CLI 的设计理念是:你需要什么,就装什么。

csharp 复制代码
# 查看可用的包
android sdk list platforms

# 查看所有版本
android sdk list --all-versions build-tools

# 移除不需要的
android sdk remove build-tools/33.0.0

# 一键更新全部
android sdk update

对 CI/CD 的意义 :在 CI 环境中,你不再需要维护一个庞大的 SDK 镜像。只需在流水线里写几条 android sdk install 命令,按需拉取所需组件,构建环境更精简,构建速度更快

3.3 android emulator ------ 模拟器管理

ini 复制代码
# 创建一个模拟器(默认 medium_phone 配置)
android emulator create

# 查看可用的设备配置
android emulator create --list-profiles

# 指定配置创建
android emulator create --profile=medium_phone

# 查看已有的模拟器
android emulator list

# 启动
android emulator start medium_phone

# 停止
android emulator stop emulator-5554

传统的模拟器管理需要在 avdmanageremulator 两个命令之间来回切换,参数格式还不一样。Android CLI 统一了操作入口。

⚠️ 注意 :Windows 平台的 android emulator 命令在当前版本(0.7)中暂时被禁用。Windows 用户需要通过 WSL2 或 Android Studio 管理模拟器。

3.4 android run ------ 部署应用

ini 复制代码
# 基本部署
android run --apks=app/build/outputs/apk/debug/app-debug.apk

# 部署到指定设备
android run --apks=app-debug.apk --device=emulator-5554

# 部署 App Bundle 拆分的多个 APK
android run --apks=base.apk,density-hdpi.apk,lang-en.apk

# 以调试模式部署
android run --apks=app-debug.apk --debug

# 指定启动的 Activity
android run --apks=app-debug.apk --activity=.MainActivity

⚠️ 注意android run 不执行构建 。你需要先用 ./gradlew assembleDebug 构建好 APK,再用 android run 部署。这个设计是有意为之------构建和部署解耦,让 Agent 可以灵活地在中间插入分析、修改等步骤。

3.5 android describe ------ 项目结构分析

ini 复制代码
android describe --project_dir=~/projects/MyApp

这个命令会分析 Android 项目结构,输出结构化的 JSON 元数据,包括:

  • 项目模块结构
  • 构建目标(Build Targets)
  • APK 输出路径
  • 依赖关系

这是专门为 Agent 设计的命令 。当一个 AI Agent 拿到一个陌生的 Android 项目时,第一件事就是 android describe------瞬间理解项目结构,而不需要一个文件一个文件地读。

3.6 android screenandroid layout ------ UI 检测

ini 复制代码
# 截取当前屏幕(带 UI 元素标注)
android screen capture --annotate --output=ui.png

# 将标注标签转换为实际坐标
android screen resolve --screenshot=ui.png --string="input tap #5"
# 输出: input tap 500 1000

# 获取 UI 布局树(JSON 格式)
android layout --pretty

# 只获取变化的元素
android layout --diff

这两个命令对自动化 UI 测试Agent 驱动的 UI 交互非常关键。Agent 可以截屏、理解 UI 元素、定位坐标、执行操作------形成一个完整的视觉交互闭环。

总结

Android CLI 六大核心命令如下:


四、Android Skills 与 Knowledge Base

如果说 Android CLI 的核心命令是手和脚 ,那 Skills 和 Knowledge Base 就是大脑

4.1 Android Skills------给 AI Agent 装"专家技能包"

Android Skills 是 Google 官方维护的结构化指令集 ,具体包括:

安装与管理

csharp 复制代码
# 安装所有 Skills
android skills add --all

# 安装特定 Skill 到特定 Agent
android skills add --agent='claude-code' edge-to-edge

# 安装到 Gemini CLI
android skills add --agent='gemini' navigation-3

# 查看已安装的 Skills
android skills list --long

# 搜索 Skills
android skills find 'performance'

# 移除特定 Skill
android skills remove --skill=r8-analyzer

自动触发机制

Skills 不需要手动激活。当你对 Agent 说"帮我把这个页面从 XML 迁移到 Compose"时,Agent 会自动匹配到 Migrate to Compose Skill,按照 Skill 中定义的步骤执行。

这就是为什么 Google 把它叫做"Skills"而不是"Docs"------文档是被动的,技能是主动的。

4.2 Android Knowledge Base------永不过时的官方文档库

LLM 最大的问题之一是知识截止日期。你的模型训练数据可能停留在一年前,但 Android API 和最佳实践每个月都在变。

Android Knowledge Base 解决了这个问题:

bash 复制代码
# 第一步:搜索文档
android docs search 'How do I improve my app performance?'

搜索结果会返回 kb:// 格式的特殊 URL:

ruby 复制代码
kb://android/topic/performance/overview
kb://android/topic/performance/reduce-apk-size
kb://android/topic/performance/vitals
ruby 复制代码
# 第二步:获取具体文档内容
android docs fetch kb://android/topic/performance/overview

文档内容会直接输出到终端------Agent 可以直接读取并基于最新文档生成代码

数据覆盖范围

Knowledge Base 不只是 Android SDK 文档,还包括:

  • Android 开发者文档(全量)
  • Firebase 文档
  • Google Developers 文档
  • Kotlin 官方文档

这意味着 Agent 在写代码时,永远可以查阅到最新的 API 签名、使用示例和推荐模式,不再受限于训练数据的时效性。


五、实战演示:从零到运行

下面是一个完整的使用流程,从安装 Android CLI 到创建项目再到部署运行。

Step 1:安装 Android CLI

macOS(Apple Silicon)

ruby 复制代码
curl -fsSL https://dl.google.com/android/cli/latest/darwin_arm64/install.sh | bash

Linux(x86_64)

ruby 复制代码
curl -fsSL https://dl.google.com/android/cli/latest/linux_x86_64/install.sh | sudo bash

Windows(x86_64,管理员 PowerShell)

ruby 复制代码
curl.exe -fsSL https://dl.google.com/android/cli/latest/windows_x86_64/install.cmd -o "%TEMP%\android-install.cmd"
"%TEMP%\android-install.cmd"

核心二进制仅 7 MB ,首次运行自动拉取约 78 MB 运行时。

Step 2:验证安装 & 初始化

shell 复制代码
# 验证安装
android --version
# 输出: 0.7.15222914

# 查看环境信息
android info
# 输出: sdk: /Users/you/Library/Android/sdk

# 初始化 Agent 环境(安装 android-cli 基础 Skill)
android init

Step 3:安装所需 SDK 组件

bash 复制代码
# 安装 Android 35 Platform 和 Build Tools
android sdk install platforms/android-35 build-tools/36.1.0

# 安装模拟器所需的系统镜像
android sdk install system-images/android-35/google_apis/x86_64

Step 4:创建项目

css 复制代码
android create --name=MyFirstApp --output=~/projects/MyFirstApp

3 秒后,一个基于 AGP 9、最新 Compose、最佳实践的完整项目就创建好了。

Step 5:创建并启动模拟器

ini 复制代码
# 创建模拟器
android emulator create --profile=medium_phone

# 启动
android emulator start medium_phone

Step 6:构建并部署

bash 复制代码
# 进入项目目录
cd ~/projects/MyFirstApp

# 构建(这一步仍使用 Gradle)
./gradlew assembleDebug

# 部署并运行
android run --apks=app/build/outputs/apk/debug/app-debug.apk

从安装到 App 跑在模拟器上,全程不到 10 分钟。

而这只是人类手动操作的速度。如果是 AI Agent 执行这套流程,速度会更快,因为每一步的命令和输出都是确定的、可解析的。


六、与 AI Agent 的协同

Android CLI 的核心价值,是在 Agent 和 Android SDK 之间架起一座高效的桥梁

模型无关:与任何 AI Agent 配合

Android CLI 不绑定 Gemini,也不绑定任何特定大模型。它支持的 Agent 包括但不限于:

  • Gemini CLI
  • Claude Code
  • Cursor
  • ...任何基于终端的 AI Agent

Skills 的安装可以指定目标 Agent:

ini 复制代码
# 为 Claude Code 安装所有 Skills
android skills add --all --agent='claude-code'

# 为 Gemini 安装特定 Skill
android skills add --agent='gemini' agp-9-upgrade

# 不指定 Agent,则安装到所有检测到的 Agent
android skills add --all

协同场景 1:Gemini CLI + Android CLI

markdown 复制代码
# 终端中启动 Gemini CLI 对话
gemini

# 在对话中直接使用
> 帮我创建一个带底部导航的 Android 项目,使用 Navigation 3 和 Material 3

# Gemini CLI 会自动调用 Android CLI 完成:
# 1. android create 创建项目
# 2. 基于 Navigation 3 Skill 生成路由代码
# 3. 基于 android docs 获取最新 API 用法
# 4. 生成完整的多 Tab 导航架构

协同场景 2:Claude Code + Android CLI

markdown 复制代码
# 在 Claude Code 中
> 分析当前项目的 R8 配置,找出可以优化的 keep 规则

# Claude Code 会:
# 1. android describe 分析项目结构
# 2. 读取 proguard-rules.pro 文件
# 3. 基于 R8 Analyzer Skill 的规则进行审计
# 4. 输出优化建议(只建议,不直接修改)

协同场景 3:CI/CD 流水线中的 Agent

bash 复制代码
# GitHub Actions 示例
steps:
  - name: Setup Android CLI
    run: |
      curl -fsSL https://dl.google.com/android/cli/latest/linux_x86_64/install.sh | bash
      android sdk install platforms/android-35 build-tools/36.1.0

  - name: Build & Deploy
    run: |
      ./gradlew assembleDebug
      android run --apks=app/build/outputs/apk/debug/app-debug.apk --device=$DEVICE_SERIAL

七、性能数据与优势总结

量化数据

Google 在官方博客中公布的内部实验数据:

📊 LLM Token 使用量:减少超过 70%(在项目创建和环境设置场景)

📊 任务完成速度:提升 3 倍(相比 Agent 仅使用 adb/sdkmanager 等标准工具集)

这两个数字的背后逻辑是:

优化点 传统方式 Android CLI
环境探测 Agent 需要多次 trial-and-error 找 SDK 路径 android info 一条命令返回
SDK 安装 解析 sdkmanager 的文本输出,处理 license 交互 android sdk install 一步到位
项目创建 Agent 需要生成整个项目骨架代码 android create 秒级完成
文档查询 Agent 依赖训练数据(可能过时) android docs 实时获取最新文档
设备管理 组合 avdmanager + emulator 命令 android emulator 统一入口

每一个优化点,都在减少 Agent 的"认知负荷"------更少的命令、更少的错误恢复、更少的 Token 浪费。

核心优势总结

  1. 统一入口 :一个 android 命令取代了散装的 adbsdkmanageravdmanagerbundletool
  2. 结构化输出:JSON 格式的输出,Agent 可直接解析,不需要正则匹配文本
  3. 按需安装:告别"全量 SDK"时代,CI/CD 环境更精简
  4. 知识注入:Knowledge Base + Skills 让 Agent 永远掌握最新最佳实践
  5. 模型无关:不锁定任何 AI Agent,开发者自由选择
  6. 与 Android Studio 互补:CLI 快速原型开发,Studio 深度调试和优化

八、适用场景与建议

✅ 最适合的场景

1. AI Agent 驱动的开发流程

如果你已经在使用 Gemini CLI、Claude Code 或 Cursor 来辅助 Android 开发,Android CLI 是必装工具。它能让你的 Agent 工作流效率提升一个量级。

2. CI/CD 自动化流水线

Android CLI 的按需安装和统一命令接口,非常适合 CI/CD 环境。告别在 Docker 镜像中维护庞大 SDK 缓存的痛苦。

3. 新项目冷启动

需要快速创建一个遵循最新最佳实践的 Android 项目?android create 是目前最快的方式。

4. 跨团队标准化

Android CLI + Skills 可以确保整个团队(包括新人和 AI Agent)都遵循同一套最佳实践,减少"每个人的项目模板都不一样"的混乱。

⚠️ 暂时不太适合的场景

1. 纯 IDE 开发者

如果你的整个工作流都在 Android Studio 里,短期内 Android CLI 对你的直接价值有限。但 Android Studio 的 Gemini 功能已经在底层集成了 Knowledge Base,你可能已经在间接使用了。

2. 复杂的多模块调试

Android CLI 目前不提供调试功能。复杂的断点调试、内存分析、性能 Profiling 仍然是 Android Studio 的主场。

3. Windows 用户(部分限制)

Windows 上的 android emulator 命令暂时被禁用。如果模拟器管理是你的核心需求,建议使用 WSL2 或等待后续版本更新。

🎯 不同阶段开发者的行动建议

开发者类型 建议行动
初级开发者(0-2 年) 安装 Android CLI,用 android create 创建项目,配合 AI Agent 学习最新最佳实践
中级开发者(2-5 年) 将 Android CLI 集成到日常开发和 CI/CD 流水线中,安装全部 Skills 提升 Agent 辅助效率
高级开发者 / Tech Lead(5 年+) 全面掌握 Skills 体系,为团队创建自定义 Skills,将项目特有的架构规范和迁移流程沉淀为可复用的 Skill 文件

九、总结

Android CLI 的发布,不是一个简单的"新工具发布"。它标志着 Google 对 Android 开发范式的根本性重新思考

从"人类在 IDE 中手动编码"到"AI Agent 在终端中自动执行,人类审查和决策"。

结合最近动态,Google 正在构建一个完整的、面向 AI Agent 的 Android 开发基础设施。

  • Android Skills:给 AI Agent 装"专家大脑"
  • Android Knowledge Base:给 AI Agent 提供"实时记忆"
  • Android CLI:给 AI Agent 提供"手和脚"
  • Android Bench:给 AI Agent 定"考试标准"

💬 你觉得 Android CLI 最吸引你的功能是什么?你已经在用 AI Agent 写 Android 代码了吗?欢迎评论区聊聊。

觉得有帮助?点个「在看」转发给你的 Android 同事 👆


📎 参考资源

相关推荐
FEF前端团队14 小时前
OpenSpec实战详解:让AI编码像搭积木般搞定需求与代码
ai编程·cursor
学习使我健康15 小时前
Android App 启动原理
android·android studio
言萧凡_CookieBoty16 小时前
Agent 推理模式谱系图:从 ReAct 到 Reflexion,一张图看懂它们的位置
ai编程
程序员陆业聪16 小时前
如何给"有状态的 LLM 系统"写一套量化评测
ai编程
小程故事多_8017 小时前
从推理到智能体,大模型强化学习中信用分配机制的演进与突破
人工智能·prompt·aigc·ai编程
Hooray17 小时前
为了在 Vue 项目里用上想要的 React 组件,我写了这个 skill
前端·ai编程
Bigger17 小时前
告别 AI 塑料感:我是如何用 frontend-design skill 重塑项目官网的
前端·ai编程·trae
Lei活在当下17 小时前
借助Vibe Coding,我用周末两天开发了一套简历维护系统
chatgpt·openai·ai编程
小程故事多_8019 小时前
破局AI Agent落地困境,Harness六大组件全解析与实践启示
人工智能·自动化·ai编程