Android 开发快 3 倍!Google 说的

上周五晚上的时候,我看到一条 Android 博客消息:

Android CLI and skills: Build Android apps 3x faster using any agent

Build Android apps 3x faster !谷歌不会标题党吧!

二话不说,立马点进去,粗略过了一眼,我高兴得差点跳起来了!

以下是我当时脑袋臆想出来的:

谷歌竟然专门给 Android 搞了个 Agent CLI!

那么也就是说,我不需要购买任何 Agent 编码工具,我直接用这个就行了呀!

还是谷歌懂我们,没想到做 Android 开发还能免费用谷歌的大模型,这不是菩萨是什么!

那么既然是 Agent CLI,有大模型,我是不是可以不仅仅问 Android 的问题?我说我 Android 开发做了个 WebView,里面碰到了 Web 问题,是不是一样就能写 Web 代码了?

就这

然后,周六我立刻下载下来用了。

这里有个小插曲:我无论如何也没法在 Windows 上用命令行完成下载(会遇到各种权限和符号相关错误)。当然官网上有打包好的版本,直接下载可运行的 exe,配置好环境变量即可。

当我阅读了一下文档,我的脑海里发现了两个字:就这?

这根本不是一个 Agent 工具,而是一个让 Agent 使用的 CLI 工具,这个工具的究极作用其实是: Google 提供了一套对大模型友好的命令行工具(CLI),并且配套下发了一组使用说明书(Skills)

一瞥

原来我一开始就想错了,它只是一个可以供给 Agent 使用的命令行工具。当然,这在 Agent 编程工具里面,这事儿并不新鲜。

我自己反思过我自己为什么会想错,原来我的大脑自动把标题提取成了:3x faster than any agent。

本质上,Agent 这种通过自然语言去执行流程的工具,需要在细节上依赖脚本(或者是其他 CLI 工具)做稳定的输入输出。

我相信大家写过或者用过一些 Skills,一个简单的 Skill 可能只有一个 SKILL.md 文件,而稍微复杂点的,就会有脚本(可以是 python,也可以是编译好的 CLI,任何可运行的脚本皆可)、例子、引用等等。

而这个 Android CLI,其实就是 Agent 工具上的一环!

初尝

Android CLI 支持相当多的功能:

但这里我主要说明一下 skills 相关的,因为这个,才是 Google 推出这个工具的主要目的。

虽然这个看法只是我的猜测,但 Android 搞了也快 20 年了,今年才搞出这么个工具,总不能说和大模型是巧合吧;嗯,标题也明写着 "using any agent"。

当你配置好这个工具之后,一个好的开头就是,打开命令行,进入到一个现有的 Android 工程中,输入:

sh 复制代码
android init

因为我用的是 Windows,所以下面只展示 Windows 的运行结果。当然,我相信,其他平台是相似的。

你会得到下面的结果:

arduino 复制代码
Initializing android-cli skill...
Skill 'android-cli' installed to C:\Users\panoo\.cursor\skills\android-cli
Skill 'android-cli' installed to C:\Users\panoo\.junie\skills\android-cli
Skill 'android-cli' installed to C:\Users\panoo\.trae\skills\android-cli
Skill 'android-cli' installed to C:\Users\panoo\.trae-cn\skills\android-cli

它会在你现有的 Agent 工具目录里,自动安装一个名为 android-cli 的技能。这个技能是全局的;你要是不喜欢,也可以放到工程里(不过那样确实不方便)。

这个技能大概长这样:

技能全文很长,这里只是一部分。

这个技能的唯一目的,就是向 Agent 说明 Android CLI 有哪些能力,以及在哪些情况下该用它。

Orchestrates Android development tasks including project creation, deployment, SDK management, and environment diagnostics using the android command-line tool.

借助 android 命令行工具,统筹调度各类安卓开发任务,涵盖项目创建、应用部署、SDK 管理以及开发环境诊断。

好,我们看下这个工具,还提供哪些技能。

sh 复制代码
android skills list
css 复制代码
android-cli
navigation-3
r8-analyzer
play-billing-library-version-upgrade
edge-to-edge
agp-9-upgrade
migrate-xml-views-to-jetpack-compose

目前就这 7 个,后续可能会持续更新。

如果你想安装任何一个技能:

sh 复制代码
android skills add --skill=edge-to-edge
arduino 复制代码
Skill 'edge-to-edge' installed to C:\Users\panoo\.cursor\skills\edge-to-edge
Skill 'edge-to-edge' installed to C:\Users\panoo\.junie\skills\edge-to-edge
Skill 'edge-to-edge' installed to C:\Users\panoo\.trae\skills\edge-to-edge
Skill 'edge-to-edge' installed to C:\Users\panoo\.trae-cn\skills\edge-to-edge

当然,你可以选择梭哈!

sh 复制代码
android skills add --all

关于技能安装,实际上操作非常简单,这里唯一一个引起我注意的是,Google 竟然还支持了 Trae,而且还区分国际版和国内版,这点给个好评。

嗯,到这里,这个 Android CLI 里我们能直接摸到的功能,基本上也就这些了。剩下的,我们打开一个 Agent 工具验证一下吧!

下面以 Cursor 为例(我有 Trae,但是总排队),我想列出我所有的模拟器:

你可能并不需要专门说明使用 android-cli 技能,但是我尝试过,Cursor 有时候会用 Android CLI,有时候是直接去我的 SDK 目录里面找。所以这里我直接说只用 android-cli 技能了。

现在,启动这个模拟器:

接下来,我告诉它给我截一张图保存在当前工程目录:

防止大模型骗我,我去看看:

还真有!

一点想法

体验下来,我觉得要对它有个准确的预期:它解决的是「把官方推荐的 Android 工作流通过 Skills 装进 Agent」这件事,而不是替你包办一个自带大模型的 Agent。

从技术视角看:

  • Android CLI 是「执行层」,它对繁杂的底层工具(adbgradlew 等)做了一层对大模型更友好的标准封装;
  • 而 Skills 则是「认知层」,相当于直接喂给 Agent 的官方说明书,告诉它"当用户让你做 A 时,按 B 原则调用 CLI 的 C 命令"。两者相辅相成。

另外,目前把它作为全局技能确实方便尝鲜,但对于真实的旧项目,工程级别的技能配置可能会更稳妥。这能防止大模型强行把诸如 Navigation 3、Edge-to-edge 等新规矩套用在不堪重负的老代码上。

最后也是非常值得期待的一点:顺着官方"统筹开发任务与诊断"的思路,后续 Android CLI 完全可以深入性能调优和疑难 Debug。比如支持直接跑 simpleperf 或抓取 heap dump。

到那时,就不再需要开发者手动 dump 内存、截图再传给 Agent 去分析了,Agent 完全可以一句话调起 CLI 抓取、解析、最终给出调优建议------由 AI 全程操办,那才是真正的质变。

想象一下,你直接说我启动有点卡,你帮我看看哪儿有问题?

总而言之,若你本来就在用 CursorTrae 等工具,把它当成官方维护的一叠说明书加脚手架,价值会很实在。

最后,实践出真知,操练起来,比读十遍公告都管用。

相关推荐
黄林晴2 小时前
Android 17 Beta4发布:四大行为变更,不改上线就崩
android
恋猫de小郭2 小时前
Flutter 3.41.7 ,小版本但 iOS 大修复,看完只想说:这是人能写出来的 bug ?
android·前端·flutter
麦芽糖02193 小时前
python进阶六 正则表达式
android·python·正则表达式
三少爷的鞋3 小时前
🚀天下苦阻塞久矣之DeliQueue:Android 17 无锁 MessageQueue 的架构重构
android
北漂Zachary11 小时前
四大编程语言终极对比
android·java·php·laravel
学习使我健康16 小时前
Android App 启动原理
android·android studio
TechMix17 小时前
【性能工具】atrace、systrace、perfetto抓取的trace文件有何不同?
android·性能优化
张小潇17 小时前
AOSP15 WMS/AMS系统开发 - 窗口层级源码分析
android·前端
努力努力再努力wz19 小时前
【MySQL入门系列】掌握表数据的 CRUD:DML 核心语法与执行逻辑解析
android·开发语言·数据结构·数据库·c++·b树·mysql