Android 工程师的 AI 搭档:Android CLI + Skills 实战笔记
这不是一篇普通的安装教程,而是一次完整的探索:从搭建环境、安装专业知识模块,到让 AI 真正读懂你的 Android 工程。
过去,我们依赖 Android Studio、Gradle、adb 完成开发闭环。但当 AI 能理解业务逻辑时,我们更希望它能像一个资深同事一样,看懂工程结构、审查 R8 规则、分析性能瓶颈,甚至直接查阅官方文档给出建议。
Google 推出的 Android CLI 和 Skills 体系,正是为此而来。我花了一些时间走通了完整链路,记录下关键步骤、踩坑经验,以及真正能落地的使用场景。
一、新老工具定位
很多开发者容易把 Android CLI 和 sdkmanager 搞混,简单区分一下:
- 传统 SDK 工具链(sdkmanager、adb 等):负责 SDK 下载、设备调试、APK 构建。
- Android CLI(新):负责 AI Agent 能力管理,为工程安装特定领域的分析技能,也能直接查询官方文档。
两者并不冲突,而是这样协作:
Android CLI
├── 管理 Android SDK(传统能力)
└── 管理 Android Skills(AI Agent 知识模块)
├── R8 分析
├── Perfetto 分析
├── 官方文档检索
└── 安全/导航/AGP 升级等
二、Skill 是什么?
你可以把 Skill 理解为 AI Agent 的专业知识包。比如 r8-analyzer 这个 Skill,它能指导 AI 审查你的 ProGuard 规则、分析 keep 规则合理性、给出 APK 瘦身建议。
每个 Skill 都包含一个 SKILL.md 核心文件,里面用 YAML 定义了名称、使用场景和分析准则。安装后,你的 AI Agent 就相当于拥有了这个领域的"专家经验"。
三、安装 Android CLI
一行命令搞定:
curl -fsSL https://dl.google.com/android/cli/latest/darwin_arm64/install.sh | bash
成功后确认版本:
android update
# Already up-to-date with version 1.0.15857036
四、实战:安装 r8-analyzer Skill
下面记录安装过程中遇到的三个实际问题及解决办法,这是文章最有价值的部分。
1. 命令格式变化
最初我按老文档执行:
android skills add --skill=r8-analyzer --project=.
报错:Unknown option。
新版用法是直接跟 Skill 名称:
android skills add r8-analyzer
经验:优先用 android skills list 查看可用名称,Skill 的注册名来自 SKILL.md 里的 name 字段,不是文件夹名。
2. GitHub 下载失败
android skills find r8
# Failed to connect to github.com/android/skills...
怀疑是网络问题,但用 curl 直接请求同一个地址,却能正常下载并拿到 693KB 的 zip 包。说明网络通畅,是 Android CLI 在下载环节出了问题。
验证方法:
# 手动下载 skill 包
curl -L https://github.com/android/skills/releases/download/v1.0.5/android-skills.zip -o /tmp/android-skills.zip
# 查看 skill 是否存在
unzip -l /tmp/android-skills.zip | grep r8
# 输出:performance/r8-analyzer/
确认 Skill 确实存在于官方包中。
3. 缓存问题导致列表不完整
检查本地缓存:
find ~/.android ~/.cache ~/.local -iname "*skill*"
# ~/.android/cli/skills
发现里面只有 android-cli,说明 Skill Registry 没有同步完整。
解决办法:清空缓存后重新拉取:
rm -rf ~/.android/cli/skills
android skills list
# 现在能看到:r8-analyzer, perfetto-trace-analysis 等全部 skill
之后,android skills add r8-analyzer 成功安装。
五、国内网络注意事项
Skill 下载走的是 github.com/android/skills/releases,国内访问 GitHub 时常会出现连接失败,这是主要门槛。
简单有效的处理方式:
- 给终端设置代理:
export https_proxy=... - 或手动下载 Skill 包后放入本地缓存目录
一旦下载成功、缓存到本地,后续分析完全离线,不再依赖 GitHub。所以第一次下载时稍加处理即可,并不是用不了。
六、推荐安装的几个 Skills
基于目前的实用性,这几个值得一试:
- r8-analyzer:APK 瘦身、ProGuard 规则优化
- perfetto-trace-analysis:卡顿、主线程阻塞分析
- perfetto-sql:用 SQL 深度查询 trace 数据
- agp-9-upgrade:辅助迁移到 Android Gradle Plugin 9
- android-intent-security:扫描 Intent 安全漏洞
七、实际使用场景:从查文档到自动化分析
安装只是第一步,真正有趣的地方在于把 CLI 和 Skills 融入日常开发流程。下面两个场景是我正在实践的用法。
场景一:让 AI Agent 直接查阅官方文档
传统方式是你打开 developer.android.com,搜索、筛选、对照版本差异。用 Android CLI 之后,你的 Agent 可以直接:
android docs "Compose 中 recomposition 的优化策略"
CLI 从官方文档库检索并返回结构化答案,这意味着:
- 回答基于最新文档,不是过时的博客或训练数据
- 能区分 API 版本差异
- Agent 可以把官方知识直接融入你的工程上下文
实际价值:做技术方案调研时,Agent 能在一个窗口内完成"查官方文档 → 对照当前工程 → 给出建议"的完整闭环。
场景二:用 Skills 做自动化分析与测试
安装好 Skills 后,Agent 可以自动完成专业领域的分析任务:
R8 优化审查:
Agent 能检查冗余的 keep rules、识别缺失的反射保护、给出 APK 体积优化建议。以前需要手动对照文档一条条审查,现在 Agent 直接输出报告。
Perfetto 性能分析:
录一段 trace,Agent 自动找出主线程阻塞点、识别过度绘制、分析 Binder 调用瓶颈,生成优化建议。性能排查从"肉眼翻 trace"变成"读报告"。
安全漏洞扫描:
Agent 自动扫描工程,找出不安全的 Intent 处理、未保护的 exported component、权限缺失等问题。
这两个场景串联起来
你设想的"调用 CLI 查文档 + 用 Skills 做测试"就是一个完整工作流:
需求评审
↓
Agent 查官方文档(android docs)
↓
Agent 分析现有工程(Skills)
↓
Agent 给出方案 + 改动建议
↓
Agent 验证改动影响(Skills 再次分析)
这比单纯用通用 AI 强在:知识来源是官方文档而非可能过时的训练数据,分析基于工程实际代码而非凭空猜测,Skills 提供领域专业知识而非泛泛而谈。
八、这到底意味着什么?
这次实战走通了完整链路:安装 CLI → 同步 Skill Registry → 下载 Skill → 安装生效 → 接入 Agent 工作流。
未来,性能优化、构建排查、安全审计等场景,都会沉淀为标准 Skill。Android CLI 不是一个普通的命令行工具,它是 Google 为 Android 工程师搭建的 AI Agent 能力入口,而 Skills 就是上面最宝贵的拼图。
你的 Agent 可以随时调用官方文档、随时启用专业分析能力,这件事本身,正在改变我们和 Android 工程交互的方式。

相关推荐
更多推荐


所有评论(0)