前言
刚刚结束的 Google I/O 2026,对 Android 开发者来说是这几年信息密度最高的一届。 
今天 Carson 不抄议程,不写新闻稿。这篇文章只回答一个问题:作为一个 Android 工程师,下周一打开电脑,我该改什么?
你看完这篇能清晰了解:
- Agent 工具链的最新进展
- Compose:彻底官宣
- Adaptive 大屏适配 为什么不能再拖
- Android 17 的性能武器
- 端侧 AI 怎么落地

I/O 2026 总览
I/O 2026 把 Android 开发的「主语」从 IDE 改成了 Agent。

1. 工具链 Agent-first
- Android CLI 1.0 稳定
- Antigravity 2.0 桌面 + CLI + SDK 全套
- AI Studio 直接 prompt 出 Compose App
2. UI Compose-only
- Views 进入维护模式
- Styles API 终于正式登场
- Glance + RemoteCompose 一套写到手机/手表/车机;
3. 业务 Adaptive 默认开
- Googlebook 入场
- Navigation 3 + Grid + FlexBox 三件套就位,大屏不再是「附赠品」。
4. 端侧 AI
Gemini Nano 4 + AppFunctions让 App 变成设备上的 MCP server。
5. Android 17
运行时与诊断工具升级
特性一:Agent-first 工具链
主要包括:Android CLI、Antigravity、AI Studio

工具一:Android CLI 1.0
终于稳定了,而且谁都能用
Android CLI 1.0 稳定版,是这一届 I/O 对 Android 开发者最直接的礼物。
它的设计目标只有一个词:agent-agnostic(代理无关)。
过去你想让 AI 帮写 Android 代码,要么用 Android Studio 内置的 Gemini,要么自己拼 prompt。
CLI 1.0 把这件事拆开了:所有 Agent 都能调一套统一的命令行入口。

支持谁?看下面这张表就清楚:
| 代理来源 | 具体工具 |
|---|---|
| Google 官方 | Android Studio 中的 Gemini、Antigravity 2.0、Antigravity CLI |
| 第三方代理 | Anthropic Claude Code 、OpenAI Codex |
最厉害的是新增的 android studio 命令子集:

bash
# 检查代理与 Studio 的连接是否就绪
$ android studio check # ✅ 代理握手
$ android studio analyze-file App.kt # 👈 走 IDE 内置 lint / 检查
$ android studio find-declaration # 👈 语义级符号定义查找
$ android studio find-usages # 👈 找所有引用,不再 grep
$ android studio render-compose-preview \
--file=HomeScreen.kt # 👈 Agent 直接拿到 Compose 预览图 + UI 树
$ android studio version-lookup # 👈 减少依赖瞎指版本
注意 render-compose-preview。这个命令的意义是:Agent 第一次能「看见」Compose 预览,而不是猜代码长什么样。
技能管理也升级了:
bash
$ android init # 初始化环境
$ android skills list # 看有哪些技能
$ android skills add --skill=adaptive-ui # 装一个适配大屏的技能
新增的技能里有几个特别值得装:迁移到 CameraX、自适应界面、新 Compose Styling API 迁移、AppFunctions 自动改造。
结论:装一遍 android update,让你工位上不管哪个 AI 都能干活,是这周该做的第一件事。
工具二: Antigravity 2.0
从「智能体 IDE」转向「多智能体平台」

之前 Antigravity 是「面向开发者的 agentic IDE」;现在改成「通用智能体优先工作平台」。差别在哪?
| 维度 | Antigravity 1.x | Antigravity 2.0 |
|---|---|---|
| 定位 | 单 Agent 编程 IDE | 多 Agent 编排平台 |
| 形态 | 桌面 IDE | 桌面 + CLI + SDK 三件套 |
| 子智能体 | 不支持 | 支持动态子 Agent |
| 定时任务 | 无 | 内置 Scheduler |
| Android 集成 | 弱 | 可选 Android 资源包:含 CLI + Skills |
那个「Android 资源包」是关键。开发者可以从 设置 > 自定义 > Build With Google 插件 装上,Antigravity 就能从生成项目一路打到部署 AVD,整条路走通。
同时拥有着桌面 + CLI + SDK 三件套:

1. 独立桌面应用
这跟之前是个IDE插件不一样了,是个真正的Agent工作环境了。 
这事儿让一个事情成立了:任何一个后端服务,都可以「养」一个常驻 Agent。
2. Antigravity CLI上线
直接替代:Gemini CLI,开发者要全部迁到Antigravity CLI。 
3. Antigravity SDK
开发者可以把Google用在Antigravity里的agent harness,直接拿到自己的服务器上跑。

工具三: AI Studio
原生 Android 开发的「门槛」大大降低了。

输入一句 prompt,它会用 Kotlin + Jetpack Compose + 推荐 API 给你生成一个原生 Android App:
- 1:浏览器内嵌 Android Emulator,直接跑;
- 2:通过 ADB 连 USB 真机安装;
- 3:有 Google Play 开发者账号?直接发布到内部测试通道;
- 4:导出 ZIP 或 GitHub,丢进 Android Studio 继续打磨。
听起来是不是有点像「Vibe Coding」?是的,进一步降低了Android开发门槛,对独立开发者非常友好。
特性二:Compose 大一统
Views终于进入维护模式

2.1 这是 Google 第一次官方明确「Views 不再发力」
Compose 是 Android UI 开发的标准。未来的 guidance 和 libraries 走 Compose-first,Views 进入 maintenance mode。
这句话是这届 I/O 的 Android UI 板块最重要的一句话。Compose 走过五年,这次有了官方盖棺论定:
- 1:Views 还能用,老项目稳定运行没问题;
- 2:但它不再有新特性,只修 bug;
- 3:所有新能力(Styles、Adaptive、Glance、RemoteCompose)只在 Compose 上发。
这意味着什么:如果一个新业务还在用 XML + Fragment 写,意味着主动放弃 Google 未来 5 年的 UI 投入。
2.2 Styles API
Compose 终于像个完整的 UI 框架
过去几年用 Compose 的人都遇到过同一个问题:Theme 和 Style 边界模糊,每个团队都在搓自己的「主题包装层」。
Styles API 给了官方答案:
kotlin
// 定义一个 Style(注意:不是 Theme)
val PrimaryCardStyle = CardStyle(
shape = RoundedCornerShape(12.dp),
containerColor = MaterialTheme.colorScheme.surfaceContainer,
elevation = 2.dp,
contentPadding = PaddingValues(16.dp)
)
// 业务侧直接用,无需自己包装函数
@Composable
fun NewsCard(news: News) {
Card(style = PrimaryCardStyle) { // 👈 一等公民
Text(news.title, style = MaterialTheme.typography.titleMedium)
Text(news.summary, color = MaterialTheme.colorScheme.onSurfaceVariant)
}
}
跟 Theme 的区别在哪?
- 1:Theme 管「全局色板和字体」;
- 2:Style 管「单个组件的具体形态」;
- 3:两者协作 ------ 同一组件可换 Style,但都吃同一套 Theme。
这事儿让设计系统迁移变简单。改一个 CardStyle,全局所有 Card 跟着变,再也不用改一千个调用点。
2.3 Glance + RemoteCompose
Widget 的统一答案
之前 Widget 是 Android 开发的「最大痛点」之一。手机 Widget 用 RemoteViews,Wear OS Tiles 一套,车机又一套。写一遍 Widget = 抄三次代码。

I/O 2026 给了答案:
- Jetpack Glance :手机 Widget、Wear OS Widget(Tiles 改名为 Wear Widgets)、车机 Widget 用同一套 Compose 风格 API;
- RemoteCompose:在手机和车机端支持高保真动画;在 Wear OS 上让 Wear Widgets 在远程 surface 上原生渲染复杂 UI 逻辑。
举个真实场景:你在车里看航班 Widget,登机口变了 ------ 手表上的同一个 Widget 同时刷新。一份 Compose 代码、三块屏幕同步。
结论:Compose 现在终于像一个完整的 UI 框架,而不是「带 Composable 的工具集」。
特性三:大屏适配 Adaptive by Default
5.8 亿大屏不再是「附赠品」

3.1 新的笔记本:Googlebook
是一种新形态:运行 Android App 的笔记本。

- 1:Android Studio Canary 已经提供 Desktop Emulator,现在就能测;
- 2:核心适配点:窗口可调、键鼠可用、布局不能只按手机竖屏设计;
- 3:和 ChromeOS 的关系?Googlebook 直接吃 Android 生态。
是不是有点像「Android 自己的 macOS」?技术上比这复杂,但思路类似。
3.2 Compose 给的三件套

适配大屏,这一届 Compose 同步给了三件套:
- 1:Navigation 3 ------ 重构的导航库,原生支持双栏 / 三栏 / List-Detail;
- 2:实验版 Grid ------ 不是 LazyGrid,是真正的 CSS Grid 风格;
- 3:实验版 FlexBox ------ 终于有了,习惯前端的人会很熟悉。
加上 CameraX 现在支持任意窗口尺寸下的正确预览 ------ 折叠屏拍照不变形了。
趋势总结
「适配大屏」从可选项变成了默认项。下一波被淘汰的,是只会写竖屏布局的工程师。
特性四:端侧 AI 与 AppFunctions
让你的 App 变成 MCP Server
4.1 端云双轨:Gemini Nano 4 + Firebase AI Logic

Android 的 AI 策略现在很清晰:
| 维度 | 端侧 | 云侧 |
|---|---|---|
| 主角 | Gemini Nano 4 preview | Firebase AI Logic |
| 适合场景 | 隐私敏感、需要离线、低延迟 | 复杂推理、长上下文、多模态 |
| 接入方式 | AICore API | Firebase SDK |
| 模型大小 | 端侧蒸馏版 | 云端 3.5 Flash / Pro |
这个分工是合理的:
- 敏感任务(OCR 健康数据、本地翻译)走端侧;
- 复杂任务(生成长文、跨数据查询)走云。
4.2 AppFunctions
你的 App 要给 Agent 留接口了

这是这一届 I/O 对 App 形态影响最大的东西,但讲的人不多。
什么是 AppFunctions?让你的 App 把功能开放给系统级 Agent 调用,等于设备里的 MCP server。
想象一个场景:
用户对 Gemini 说:「帮我把昨天的健身记录分享到家庭群」
Gemini 的执行链路:
1️⃣ 调 健身 App 的 AppFunction → 拿昨天的记录
2️⃣ 调 微信/Telegram 的 AppFunction → 找家庭群
3️⃣ 调 系统截图能力 → 生成图片
4️⃣ 调 IM App 的 AppFunction → 发送
整个过程里用户不需要打开任何一个 App。
那对开发者意味着什么?接口比 UI 更重要 。如果你的 App 没注册 AppFunctions,Agent 跳过你,用户可能再也不会主动打开你的 App 了。
接入方式很简单(这是 Carson 整理的,注意官方文档以最新为准):
kotlin
// 1. 在 AppFunctions 描述文件里声明你的能力
@AppFunction(
description = "Get the user's last workout record",
schema = WorkoutSchema::class
)
suspend fun getLastWorkout(userId: String): WorkoutRecord {
return workoutRepository.findLast(userId)
}
// 2. Android CLI 的 AppFunctions skill 会帮你自动改造老代码
$ android skills add --skill=appfunctions
$ android appfunctions analyze // 👈 分析项目,推荐改造点
未来的 App 不只是「给人用」,还得「给 Agent 用」------ 接口能不能被调用,决定生死。
特性五:Android 17
把 App 的「血压」降下来

5.1 系统底层:无锁化 + GC 调优
Android 17 的运行时改动很扎实,没有花哨的东西,全是基本功:
- 1:lock-free MessageQueue ------ 主线程消息队列改成无锁版本,调度更稳;
- 2:young-gen GC 更频繁、压力更小 ------ 长任务掉帧改善;
- 3:contact picker 和 eyedropper API ------ 新隐私 API,减少敏感权限暴露;
- 4:target API 37 时强制大屏可调整尺寸、默认证书透明度、受限本地网络访问。
target API 37 那条要重点看一下。「强制大屏可调整尺寸」意味着你不能再硬锁竖屏。如果你的 App 是直播/游戏类、之前一直锁竖屏,得提前规划。
5.2 工具:R8 和 ProfilingManager
光改运行时不够,工具也得跟上。

R8 Configuration Analyzer 解决一个老问题 ------ 包体为什么这么大?
bash
# 跑一下分析器
$ ./gradlew :app:r8ConfigurationAnalysis
# 输出会告诉你
# - 哪些 keep rules 没用但被强制保留
# - 哪些 rules 把整个包都拖下水
# - 优化后预期能瘦身多少 KB
之前查 keep rules 全靠经验和二分法,现在终于有了诊断器。
ProfilingManager + LeakCanary 集成更狠:

- 1:以前要在项目里手动埋 LeakCanary 库;
- 2:现在 Android Studio 直接集成,点一个按钮就能开;
- 3:跑出泄漏路径直接显示在 Profiler 面板里。
内存泄漏从「埋库 + 等用户复现 + 看堆」简化成「按按钮看结果」。
5.3 媒体:Media3 直接进 AI 时代

Media3 这一波动作不小:
- 1:CameraXViewfinder Composable ------ 取景框直接 Composable 化;
- 2:Media3 AI Effects ------ 视频 Magic Eraser(擦人擦物)、音频 Studio Sound(降噪)直接进 ExoPlayer 链路;
- 3:CodecDB ------ 设备解码能力数据库,不用再凭经验猜;
- 4:ExoPlayer Scrubbing Mode ------ 拖动进度条更顺。
短视频类 App 应该最先动手 ------ 不动手的,用户在别家看到 Magic Eraser 后就回不来了。
结论
Android 17 这些都不是让 App 更强的特性,而是让整个 Android 生态更健康的规则。
最后

回头看 I/O 2026:这是 Android 开发模式从「IDE 中心」转向「Agent 中心」的拐点。
因为 Google 把整套基础设施都改了:
- CLI 给 Agent 用
- Antigravity 给 Agent 编排
- AppFunctions 让 App 给 Agent 暴露能力
这一届 I/O 不是教你用新 API,是逼你重新想 App 是给谁写的,因为很多活都被AI干完了。
📎 参考资料
- I/O 2026 developer highlights - Antigravity, Gemini API, AI Studio:blog.google/innovation-...
- What's new in Android (Google I/O 2026 recap):app.daily.dev/posts/what-...