Appearance
Android 16 总览:发布时间线、API 36 与发布节奏新政
本页导读:本页给你一张 Android 16 的整体地图——发布时间线、版本号与 API 36 的对应关系、2025 年起生效的「一年两次 API 发布」新政策、AOSP 代码开放节奏,以及相对 Android 15 的主要跳变点速查。本篇全站基线锁定 Android 16(API 36);所有新特性均给出官方文档链接与版本注记,站外传言一律不采信。
一、发布时间线:从预览版到正式版
版本注记:以下节点全部取自官方Android 16 版本说明与官方特性页,均为 Android 16 / API 36 周期。
| 阶段 | 时间 | 关键内容 |
|---|---|---|
| 开发者预览 DP1 | 2025 年 1 月(Q1) | 首个公开 build;官方同时宣布「2025 年发布两个 Android API」的节奏调整 |
| 开发者预览 DP2 | 2025 年 Q1 | JobScheduler 配额优化、预测性返回更新、ADPF 裕度 API、16 KB 相关变更入场 |
| Beta 1 | 2025 年 Q1 | 首个面向尝鲜者的 Beta;自适应布局、健康与健身权限、以进度为中心的通知、通用测距 API、APV 等主要项入场 |
| Beta 2 / 2.1 | 2025 年 2 月 | 16 KB 页面兼容模式、Intent 重定向默认加固、混合自动曝光、AGSL 扩展、密钥共享 API 等 |
| Beta 3 / 3.1 / 3.2 | 2025 年 3–4 月 | 平台稳定性里程碑:对外 API 与面向应用的行为全部冻结,进入最终兼容性测试窗口 |
| Beta 4 / 4.1 | 2025 年 5 月 | 收尾修复版(触感反馈、功耗、测距重启等修复) |
| 正式版 | 2025 年 Q2 | 官方口径「计划于 2025 年 Q2 发布」(特性页原文),随后 Pixel 稳定镜像与合作伙伴机型自 2025 年 6 月起陆续推送 |
| Android 16 QPR(次要发布) | 2025 年 Q4 起 | 官方预告的第二个 API 版本:只加特性/API/Bug 修复,不含影响应用的行为变更;例如 QPR2 起自动主题应用图标 |
两点值得框架学习者特别注意:
- 平台稳定性里程碑提前到 Beta 3:官方明确「Beta 3 起内部与外部 API、面向应用的行为已最终确定」。也就是说,全年兼容性测试的硬截止线在每年 4 月前后,而不是正式版发布时。
- 次要发布有自己的 API 差异报告:API 36 正式版对应 api_diff/36,增量条目在 api_diff/36-incr,次要发布(如 36.1)另有 api_diff/36.1。研究某个 API 到底诞生于哪个 release,查这三张表最准。
二、版本号体系:API 36 与代号 BAKLAVA
版本注记:下表为官方 API 级别参考页(
<uses-sdk>文档)截至 2026-10 的权威映射,覆盖 Android 10 → 17。
| 平台版本 | API 级别 | VERSION_CODES 代号 | 备注 |
|---|---|---|---|
| Android 10 | 29 | Q | 分区存储、非 SDK 接口限制起步 |
| Android 11 | 30 | R | 一次性授权、Bubbles |
| Android 12 | 31 / 32 | S / S_V2 | 两个 API 级别(12L);SP 版本 |
| Android 13 | 33 | TIRAMISU | 通知运行时权限、 per-app 语言 |
| Android 14 | 34 | UPSIDE_DOWN_CAKE | 14 主要版本,前台服务收紧 |
| Android 15 | 35 | VANILLA_ICE_CREAM | edge-to-edge 首次强制、16 KB 支持引入 |
| Android 16 | 36 | BAKLAVA | 本站基线;一年两次 API 发布的首个 major |
| Android 17 | 37 | CINNAMON_BUN | 官方表已列出,动向见学习路径页一句话 |
关于 targetSdk 的三条硬规则(均出自上面同一官方页):
- API 级别只属于 major 版本。每个 Android 平台版本恰好支持一个 API 级别;次要发布(QPR)不产生新的可 target 的 API 级别——官方原文明确「无法指定应用以某个次要 SDK 版本为目标平台或需要某个次要 SDK 版本」。
targetSdkVersion决定兼容性开关集合:平台 API 级别高于 target 时,系统为旧 target 应用保留兼容性行为。本篇 02 页讲的所有「仅影响 targetSdk 36」的变更,都挂在这条机制上。- 预发布 API 不带整数级别,标记为「API 正在开发中」,试用需严格相等比较
Build.VERSION.PREVIEW_SDK_INT。
两个常见误区提前拆掉:
- 误区一:「Android 16 QPR 是 API 37」。 不是。QPR 是 36 之下的次要发布,用
SDK_INT_FULL/getMinorSdkVersion()判断,targetSdk 仍然是 36。 - 误区二:「target 不到 36 就感知不到 16 的新行为」。 也不对。01 页的全部应用级变更(配额、广播、ART、Intent 加固等)不看 targetSdk,只看设备镜像与组件版本。
三、发布节奏新政策:一年两次 API release
版本注记:本节全部来自官方特性页「2025 年发布了两个 Android API」一节,是理解 16 之后所有版本行为变更的元规则。
官方把平台发布拆成了四类节奏:
| 节奏 | 内容 | 含行为变更? | 含新 API? |
|---|---|---|---|
| Q2 major release(如 Android 16) | 完整平台版本 | 是(全年唯一一次) | 是 |
| Q4 minor release(如 Android 16 QPR) | 特性更新、优化、Bug 修复 | 否 | 是(部分) |
| Q1 / Q3 季度更新 | 质量修复(原 QPR 式滚动) | 否 | 否 |
配套要点:
- 提前一个季度:major 从往年 Q3 提前到 Q2,目的是贴合设备上市周期,让正式版更早覆盖更多机型;开发者的年度兼容性测试也相应提前。
- Google Play 的 target API 年更要求不变,且只绑定 major 级别(官方 Note 原文)。
- 运行时守卫 API 也配套升级(Android 16 引入):
java
// major 判断(既有方式,继续受支持)
if (SDK_INT >= VERSION_CODES.BAKLAVA) { /* Android 16 API */ }
// major + minor 统一判断(新常量)
if (SDK_INT_FULL >= VERSION_CODES_FULL.<MAJOR 或 MINOR>) { /* ... */ }
// 只取 minor 版本号
int minor = Build.getMinorSdkVersion(VERSION_CODES_FULL.BAKLAVA);对框架学习者的含义:「行为变更跟 major、能力增量跟 minor、质量修复跟季度」成为官方明示契约。以后看任何特性文档,先确认它属于哪个 release,比背版本号更有用。
和历史节奏对比一句:Android 10–14 是「每年 Q3 一次大版本」,Android 15 延续旧节奏;从 2025 年(Android 16)起才切换到上表的新模式。所以读 15 及以前的旧书旧博客时,默认它们的发布周期描述已过时。
四、代码开放与 AOSP 对应关系
- 源码开放:Android 16 正式版对应的完整源码在 AOSP(
platform/manifest)发布;Pixel 镜像与通用系统映像 GSI(官方在版本说明中提供获取入口)可用于早期兼容性测试。 - 分支与标签:AOSP 使用
androidXX-release系分支 +android-16.0.0_rX形式 tag 管理版本,跨版本 diff 与源码阅读方法见本站 AOSP 源码地图。 - Mainline 模块打破「版本 = 镜像」:Android 16 的行为变更页明确提醒——ART 等模块通过 Google Play 系统更新推送,官方口径是覆盖「超过 10 亿台运行 Android 12(API 31)及以上的设备」。也就是说,依赖 ART 内部结构的代码,即使在 Android 12/13/14/15 设备上也可能被 16 时代的 ART 更新波及(参考官方博客《The secret to Android's improved memory: the latest ART update》)。详见本站 01 行为变更-全部应用 的 ART 一节。
- 获取渠道不止刷机:官方在版本说明里列了三条路径——Pixel OTA/Beta 计划、合作伙伴机型、模拟器 + GSI;做兼容性回归优先用模拟器镜像 + 1–2 台真机,不必全员刷机。
- AOSP ≠ 出厂系统:厂商 ROM 在 AOSP 之上叠加自家框架层;GMS 设备还需通过 CTS/VTS。两者的关系与读厂商源码的方法见 AOSP 源码地图。
五、Android 15 → 16 主要跳变点地图
版本注记:下表全部条目都能在本篇 01/02 两页的官方行为变更页找到对应章节(API 36)。列中「15 的状态」帮助回忆上一代基线。
| 跳变点 | Android 15 的状态 | Android 16 的状态 | 详情 |
|---|---|---|---|
| Edge-to-edge | 强制但可用 windowOptOutEdgeToEdgeEnforcement 退出 | 该开关弃用且失效,无法退出 | 02 页 §一 |
| 预测性返回 | 需迁移并用 manifest flag 开启 | target36 默认启用系统动画,onBackPressed/KEYCODE_BACK 不再分发 | 02 页 §二、官方迁移指南 |
| 大屏方向/比例限制 | 可用兼容性标志试开 UNIVERSAL_RESIZABLE_BY_DEFAULT | target36 在 sw≥600dp 屏上忽略屏幕方向/可调整性/宽高比限制(游戏等例外,可临时退出;target37 起退出机制作废) | 02 页 §五 |
| 后台任务配额 | JobScheduler 配额按待机分档 | 配额扩展:前台态启动、与前服务并行的作业也纳入配额;新增 abandoned 停止原因 | 01 页 §一、官方省电最佳实践 |
| 16 KB 内存页 | 平台支持 16 KB(App 需自行对齐) | 新增 4KB 兼容模式(android:pageSizeCompat),4KB 应用可在 16KB 设备上运行 | 01 页 §四、官方指南 |
| 健康数据权限 | BODY_SENSORS / Health Connect 并存 | target36 起心率类 API 一律改走 android.permission.health 细粒度权限 | 02 页 §六 |
| 本地网络访问 | 无限制 | 本地网络保护(LNP)25Q2 起选择启用、26Q2 前强制 | 02 页 §九 |
| Intent 安全 | 「更安全的 intent」第一期(发送侧) | 重定向防护默认开启(全部应用);接收侧严格匹配可 intentMatchingFlags 选择启用 | 01 页 §八、02 页 §八 |
| 有序广播优先级 | 跨进程全局生效 | 优先级只在同应用进程内保证,且被钳制到系统区间 | 01 页 §二 |
| 媒体/隐私 | MediaStore#getVersion() 返回全局版本 | 每应用唯一化,防指纹 | 02 页 §八 |
一条总趋势值得记住:Android 16 的强制项几乎全是「Android 14/15 预告过的到期项」(edge-to-edge、预测性返回、大屏自适应、健康权限都是上代埋的钩子到期),同时用「兼容模式 / 临时退出属性」给出软着陆窗口(如 PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY、android:pageSizeCompat)。追新版本的正确姿势是把上上代文档里的「未来版本将移除」条目做进台账。
如果只记三件事,记这三件:
- target36 三大强制:edge-to-edge 不可退出、预测性返回默认开、sw600dp+ 忽略方向/比例限制。
- 不看 target 也会中招:后台作业配额、广播优先级、Intent 重定向防护、ART 结构依赖。
- 隐私两条新规要提前布防:健康细粒度权限、本地网络权限(LNP)。
六、框架视角:16 变更在源码中的落点速查
版本注记:路径均为 AOSP
aosp-main/android16-release分支惯常位置,供读源码时按图查找;目录级结构见AOSP 源码地图。
| 变更域 | 主要源码落点 | 阅读入口 |
|---|---|---|
| JobScheduler 配额与停止原因 | frameworks/base/services/core/java/com/android/server/job/(JobSchedulerService、JobServiceContextImpl 及 quota 相关类) | 搜 STOP_REASON_TIMEOUT_ABANDONED |
| 广播优先级钳制 | frameworks/base/services/core/java/com/android/server/am/(广播队列/BroadcastQueue 相关) | 搜 SYSTEM_LOW_PRIORITY |
| ART 内部变更 | AOSP art/ 仓库(独立于平台版本,另经 Mainline 下发) | 看 art/runtime 与 release 差异 |
| 16 KB 页兼容模式 | 构建/链接层 + manifest 解析;详见 AOSP 专文 | 搜 pageSizeCompat |
| 预测性返回 | frameworks/base/core/java/android/window(OnBackInvokedDispatcher)+ services 内 BackAnimation 相关 | 搜 PRIORITY_SYSTEM_NAVIGATION_OBSERVER |
| 大屏忽略方向/比例 | frameworks/base/services/core/java/com/android/server/wm/(ScreenOrientation/Resize 逻辑) | 搜 UNIVERSAL_RESIZABLE_BY_DEFAULT |
| 健康权限归组 | frameworks/base/core/java/android/manifest 权限声明 + Health Connect 模块 | 搜 android.permission.health |
| 本地网络保护 | 网络栈 socket 层(内核/用户态 SEPolicy 配合),App 侧看 NsdManager | 开关名 RESTRICT_LOCAL_NETWORK |
| Intent 重定向加固 / Safer Intents | frameworks/base/services/core/java/com/android/server/am/ 与 pm/(intent 解析) | 搜 removeLaunchSecurityProtection、enforceIntentFilter |
| 以进度为中心的通知 | frameworks/base/core/java/android/app/Notification.java(ProgressStyle 内部类) | API diff 36 搜 ProgressStyle |
| 通用测距 RangingManager | frameworks/base/location/java/android/location/uwb 与 .../ranging 相关包 | API diff 36 搜 RangingManager |
| APV 编解码 / UltraHDR | frameworks/av/(媒体)+ frameworks/base/graphics(HDR 图像) | API diff 36 搜 APV、ULTRAHDR |
读法建议:先用 cs.android.com 在 android16-release 分支上搜上表第三列的关键字,定位到文件后再回到本地 repo 检出看上下文——搜索引擎定位 + 本地通读是目前跨版本阅读效率最高的组合。
七、上手 Android 16 兼容性检查清单
把下面的项当作年度兼容性测试的最小集(适用 target 不限时优先检查 ★ 项):
- ★ 在 Android 16 真机/模拟器上全量回归一遍,重点看后台任务、作业调度是否出现新增 stop reason(
WorkInfo.getStopReason()/JobParameters.getStopReason())。 - ★ 检查日志中
PackageManager标签的 intent 拦截告警(Safer Intents 试启用时尤其必要)。 - ★ 用含 16 KB page 模式的镜像验证 4 KB 对齐应用能否启动,并评估添加
android:pageSizeCompat。 - 检查广播优先级依赖;多进程应用改用显式协调通道。
- 检查反射/内部结构依赖(重点:依赖 ART 内部的库,如 HiddenApiBypass、FlyCore 老版本,官方已知问题清单点名)。
- target36 升级前:edge-to-edge 适配(移除 opt-out)、预测性返回迁移、sw600dp 大屏自适应、健康权限迁移、LNP 预适配——逐项见 02 页。
- 无障碍:替换
announceForAccessibility,适配轮廓文本等高对比度新机制。 - 蓝牙:适配绑定丢失新行为与两个新 intent(
ACTION_KEY_MISSING、ACTION_ENCRYPTION_CHANGE)。
八、本小节怎么读
- 01 行为变更:全部应用——不升级 targetSdk 也会中招的变更,逐项「内容 + 影响面 + 检测方法」。
- 02 行为变更:targetSdk 36——升级 target 必须处理的硬骨头:edge-to-edge、预测性返回、大屏自适应、健康权限、LNP。
- 03 生产力与界面——大屏多窗口、进度通知、触感、输入法文本、无障碍。
- 04 媒体图形性能——相机专业控制、AGSL、UltraHDR、APV、ADPF 裕度、帧率与剖析。
- 05 连接与设备——蓝牙绑定、测距安全、设备在场、Health Connect。
- 06 隐私与安全——intent 安全体系、本地网络权限、ART/GPU 加固、密钥共享。
- 工具三篇在 ../tools/01-aosp-source-map.md 起:源码地图 → 调试工具链 → 学习路径。
- 想确认 16 之后有没有新的次要发布:看 API 差异报告 是否出现更新的 36.x 目录、官方版本门户 是否挂出新代号即可。
- 本篇全部事实核对时间为 2026-10;若你读到本文时 Android 17(API 37)已正式发布,仍以本站「Android 16 基线」口径学习,17 的增量对照留待后续版本更新。
本页小结:Android 16(代号 BAKLAVA,API 36)是「双发布节奏」下的首个 major:Q2 发正式版与全年唯一一批行为变更,Q4 发只加能力的 minor(QPR),Q1/Q3 只做质量更新。正式版 2025 年 Q2 落地、平台稳定性冻结在 Beta 3。相对 15 的跳变集中在 edge-to-edge 强制化、预测性返回默认化、sw600dp+ 忽略方向/比例限制、健康数据细粒度权限、本地网络保护与 intent 安全体系;ART 等 Mainline 组件经 Play 系统更新跨版本下发,使「行为随组件版本变化」成为常态。
参考资料
- Android 16 特性与 API(官方):https://developer.android.google.cn/about/versions/16/features
- Android 16 版本说明(时间线):https://developer.android.google.cn/about/versions/16/release-notes
- 行为变更:所有应用:https://developer.android.google.cn/about/versions/16/behavior-changes-all
- 行为变更:以 Android 16 为目标平台:https://developer.android.google.cn/about/versions/16/behavior-changes-16
- API 级别与
<uses-sdk>(版本对照表):https://developer.android.google.cn/about/versions/api-levels - API 差异报告(36):https://developer.android.google.cn/sdk/api_diff/36/changes
- API 差异报告(36.1 次要发布):https://developer.android.google.cn/sdk/api_diff/36.1/changes
- 兼容性变更框架参考:https://developer.android.google.cn/about/versions/16/reference/compat-framework-changes
- 准备 Android 16 SDK:https://developer.android.google.cn/about/versions/16/setup-sdk
- AOSP 源码获取(官方文档):https://source.android.google.cn/docs/setup/start/requirements
- AOSP 平台架构总览:https://source.android.google.cn/docs/core/architecture
- ART 模块经 Play 系统更新下发(官方博客):https://android-developers.googleblog.com/2023/11/the-secret-to-androids-improved-memory-latest-android-runtime-update.html