Skip to content

生产力与界面特性:大屏多窗口、通知、触感、文本与无障碍 ​

本页导读:Android 16 在「日常使用体验」上给了成建制的新东西:大屏/桌面窗口化的强制自适应(target36)、以进度为中心的通知(Notification.ProgressStyle)、系统动画层的预测性返回、可编程触感曲线、动态壁纸内容 API、竖排文字与自定义度量衡、一整批无障碍新语义,以及 LE Audio 助听器控制。本页逐项给出版本归属与官方链接,并标注哪些是 API 36 首发、哪些来自 QPR 次要发布。

版本注记:事实源为官方Android 16 特性页与两页行为变更,核对时间 2026-10。

前置阅读:本页多处引用 02 行为变更-targetSdk 36(强制项细节)与 01 行为变更-全部应用(不看 target 的行为项),三页合看才是完整的 Android 16 界面改造清单。

一、能力地图:先分清首发与 QPR ​

特性版本归属API 级别官方入口
大屏忽略方向/比例限制API 36(仅 target36)36bc-36 页
以进度为中心的通知API 3636ProgressStyle 专页
预测性返回增强(观察者/任务回调)API 3636特性页 §预测性返回更新
三按钮导航支持预测动画API 3636bc-all 页
触感振幅/频率曲线API 3636特性页 §触感
动态壁纸内容 APIAPI 3636WallpaperDescription 参考
竖排文字(Paint 级)API 3636Paint.VERTICAL_TEXT_FLAG
自定义度量衡制API 3636特性页 §国际化
无障碍语义 API 一批API 3636特性页 §无障碍
主题应用图标自动应用Android 16 QPR236.x(minor)bc-all 页

表中「API 36」列的含义:功能守卫写 SDK_INT >= 36 即可;标 QPR 的行必须改用 SDK_INT_FULL/getMinorSdkVersion()(用法见 00 页 §三),两者混用会把 minor 特性误判成 major。

二、大屏、多窗口与桌面窗口化:从「可选」变「默认」 ​

版本注记:核心机制是 target36 行为变更(API 36,sw≥600dp 屏生效);窗口形态本身(分屏、桌面窗口化)为既有能力在 16 上继续演进。

Android 16 改变了什么

  • 过去「锁竖屏、禁缩放、限宽高比」是合法防御;target36 起这些限制在 sw600dp+ 屏上被系统直接忽略(细节与例外矩阵见 02 页 §六)。官方明确表述:Android 正转向「应用必须适应任意屏幕方向、显示大小与宽高比」的模型,分屏与桌面窗口化模式都在此约束下运行。
  • 临时逃生阀 PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY 可用,但官方白纸黑字:target 37 起作废。把「先躲一躲」当成终局方案的团队,37 会被动补课。

工程清单(大屏适配实操)

  1. 尺寸假设清零:不要按「手机竖屏」写死边距/断点,用窗口尺寸类(WindowSizeClass 思路)与自适应布局(官方自适应布局)。
  2. 状态可恢复:旋转/拖窗口/分屏都会触发配置变更与重建(02 页 §六的状态保存要求)。
  3. 多窗口形态纳入回归矩阵:分屏 50/50、1/3 侧栏、桌面窗口任意拖拽尺寸三档起步;桌面形态的指针交互、悬停态与最大窗口边距按桌面设计规范走。
  4. 跨设备投影:VDO 场景(手机应用投到 PC/车机)下限制同样可被属主应用忽略,见 01 页 §九。
  5. 系统级多窗口既有 API(分屏/画中画/ActivityOptions 等)不属于 16 新增,用法不变,可在自适应应用门户统一复习。

测试窗口的推荐档位(覆盖绝大多数桌面窗口化布局问题):

  1. 全屏横屏(基准档,sw≥600dp 设备上跑);
  2. 分屏左右 1:1 与 2:1;
  3. 桌面窗口三种典型尺寸:最小宽 600dp 临界、接近正方形、用户拉满的超宽窗口;
  4. 每档各触发一次旋转与一次「拖窗改尺寸」,同时监控 activity 重建与列表滚动位置。

三、预测性返回:从「应用侧迁移」进入「系统动画全量接管」 ​

版本注记:Android 16 / API 36。行为变更(默认启用、onBackPressed 停发)在 02 页 §三;本页讲新能力。

  • PRIORITY_SYSTEM_NAVIGATION_OBSERVER:以观察者身份注册 OnBackInvokedCallback,能在系统处理返回时收到常规 onBackInvoked 回调而不干扰正常返回流——适合埋点、动画协同这类只读需求。
  • finishAndRemoveTaskCallback() / moveTaskToBackCallback():注册到 OnBackInvokedDispatcher 后,返回手势触发对应行为并播放匹配的预测动画(任务关闭/任务退后台),替代过去「手动调 finish + 无动画」的割裂体验。
  • 三按钮导航同样受益:长按返回键即触发预测动画预览(回主页/跨任务/跨 activity 动画全系统覆盖)。
  • 迁移主文档:预测性返回。

四、以进度为中心的通知(ProgressStyle) ​

版本注记:Android 16 / API 36 新 API;官方专页与类参考齐全。

  • 类:Notification.ProgressStyle(内部原语 ProgressStyle.Point 里程碑点 / ProgressStyle.Segment 分段)。
  • 设计意图:跟踪「用户发起的端到端进程」——网约车行程、外卖配送、导航线路——用点与段表达状态与里程碑,锁屏与通知栏有两套呈现形态。
  • 与旧「进度条通知」的区别:ProgressStyle 是语义化的进程叙事(里程碑 + 当前所处段),不是百分比进度条;适合有确定阶段的业务,纯百分比下载仍用传统进度通知。
  • 完整用法见官方专页:以进度为中心的通知。

三个常见误用(设计评审先挡住):把 ProgressStyle 画成百分比进度条(丢掉了里程碑语义);给无终点的任务铺满 Point(应留给确定阶段);用通知进度替代应用内页而不给跳转入口(用户看不到细节)。

五、更丰富的触感反馈:振幅与频率曲线可编程 ​

版本注记:Android 16 / API 36。谱系:Android 11(API 30)引入语义基元 VibrationEffect.Compositions,Android 16 引入振幅/频率曲线定义并抽象设备差异。

  • 能力:应用按曲线描述一次触感的强度/频率随时间变化,系统映射到设备执行器能力,避免过去「逐机型调参」。

  • 演进脉络:固定时长/振幅(API 30 前)→ 语义组合基元 Compositions(Android 11,API 30)→ 曲线化定义(Android 16,API 36)。

  • 适用:游戏命中反馈、地图导航分段提示、关键操作确认等;低配设备会退化但仍可感。

  • API 面:Vibrator / VibrationEffect 扩展(参考文档);配合 04 页 的性能话题,游戏侧注意与 ADPF 热降频的体感联动。

六、动态壁纸的内容处理 API ​

版本注记:Android 16 / API 36,壁纸框架新 content API。

  • 新类型:WallpaperDescription / WallpaperInstance——同一壁纸服务可声明多实例(主屏与锁屏可呈现不同内容),壁纸选择器与 WallpaperManager 据此呈现。
  • 价值:过去「用户提供素材 + 动态壁纸」需要服务私有的复杂实现;现在元数据标准化,个性化动态壁纸的集成成本显著下降。

七、输入法与文本改进 ​

版本注记:Android 16 / API 36。

7.1 竖排文字(低级 API) ​

  • Paint 新增 VERTICAL_TEXT_FLAG(参考):设置后文本测量按垂直进度报告,Canvas 垂直绘制——面向日语等竖排书写系统给库开发者打地基。
  • 官方明确边界:TextView/Layout/Compose Text 等高级 API 暂不支持竖排,需要者目前只能自绘(特性页给了 Compose drawIntoCanvas 示例)。

7.2 自定义度量衡制 ​

  • 设置 → 系统 → 语言和地区:用户可自定义测量系统(如英语(美国)设备改走公制);偏好编译进 locale 代码,监听 ACTION_LOCALE_CHANGED 处理变更。
  • 用格式化器(LocaleList/MeasurementSystem 感知)输出本地化单位,别硬编码「in/oz」。

7.3 优雅字体的终局 ​

elegantTextHeight 在 target36 被忽略的迁移要求见 02 页 §四;与本页 7.1 合看就是 16 的文本渲染两条线:复杂文种默认排版现代化 + 竖排基建起步。

八、可访问性:一次补齐八块语义 ​

版本注记:Android 16 / API 36。总入口无障碍指南。

能力API 要点对谁有用
轮廓文本AccessibilityManager 查询/监听轮廓文本模式(替代高对比度文本,描边增强对比)自绘文本/界面工具包必须跟进,否则主题切换后文字对比失衡
时长朗读TtsSpan.TYPE_DURATION(ARG_HOURS/MINUTES/SECONDS)计时、运动、导航类 app 的 TTS 读法统一
多标签关联AccessibilityNodeInfo#addLabeledBy/removeLabeledBy/getLabeledByList(弃用 setLabeledBy/getLabeledBy)表单控件对应多个 label 的 Web 式场景
展开态播报setExpandedState + CONTENT_CHANGE_TYPE_EXPANDED 事件菜单、折叠列表的 TalkBack 反馈
不确定进度RangeInfo 新增 RANGE_TYPE_INDETERMINATE加载环/跑马灯的读屏一致性
三态复选框getChecked()/setChecked(int) 支持「部分选中」,取代布尔版全选框半选态
补充说明setSupplementalDescription(GroupView 说明不覆盖子节点标签)「字体族:Roboto」这类父子双标签
必填字段setFieldRequired表单必填项的读屏提示与快速跳转

同时注意减法:announceForAccessibility/TYPE_ANNOUNCEMENT 在 16 被弃用,替代矩阵见 01 页 §六。

验收要点提醒:

  • 轮廓文本只对「绕过 android.text.Layout 的自绘文本」和界面工具包有硬要求,普通 app 系统自动生效,但要在开启模式后目检对比度。
  • 三态复选框迁移时注意别新旧两套 API 混用:布尔 isChecked 与新 int 版并存期间以 int 版为准。
  • setSupplementalDescription 是给「父容器补充语境」用的,别拿它替代 contentDescription,否则会把子节点标签盖掉(这正是 16 要修的历史坑)。

九、LE Audio 助听器:通话麦源与环境音量 ​

版本注记:Android 16 / API 36,面向助听器用户(Android 无障碍体系的硬件侧延伸)。

  • 语音通话可在「助听器内置麦」与「手机麦」之间切换——嘈杂环境或助听器麦克处境差时救场。
  • 新增环境音量调节:放大/压低助听器麦克风拾取的环境声。
  • 对应用开发者多为无感受益; hearing-aid 相关适配检查点在通话/会议类 app 的音频路由测试。

验收建议:通话类 app 在支持 LE Audio 助听器的环境跑一轮「麦源切换 + 环境音量调节」组合用例,确认音频焦点与路由回调无异常即可,无应用侧 API 需要接入。

十、把 16 界面特性做进产品的顺序建议 ​

  1. 先还债:target36 的 edge-to-edge、预测性返回、大屏自适应三件套(02 页)——不做完,后面全是 bug。
  2. 再收益:ProgressStyle(行程类)、触感曲线(游戏/导航)、addLabeledBy 等无障碍八项(可分批)。
  3. 后铺开:竖排与度量衡(出海日区/多地区产品),动态壁纸 API(壁纸类 app),主题图标(5 分钟补 monochrome 图层,QPR2 起系统自动兜底)。
  4. 无障碍改完用 TalkBack 实测清单回归。
  5. 涉及自绘文本/界面库的团队,把「轮廓文本监听接入」列入 16 的必做项,其他团队列入观察项。
  6. 游戏团队额外把触感曲线与 04 页 §四 的 ADPF 裕度 API 放进同一迭代。

每条特性的「版本校验」小抄(写文档/提测单时用):

  • 说 ProgressStyle、触感曲线、竖排 flag、八项无障碍 → 一律标 Android 16 / API 36。
  • 说主题应用图标 → 标 Android 16 QPR2(次要发布),判断代码用 SDK_INT_FULL。
  • 说桌面窗口化的「强制自适应」→ 标 Android 16 / API 36,仅 target36、仅 sw≥600dp,三个限定词一个都不能少。
  • 说分屏/画中画→ 那是 Android 7(API 24)起的老三样,别蹭 16 的热度。

十一、FAQ:四个高频疑问 ​

  • Q:桌面窗口化要单独申请什么权限或特性声明吗? A:官方两页行为变更里没有任何应用侧声明要求,自适应布局是唯一的硬性要求;具体形态入口(如何进入窗口模式、快捷键)以设备/OEM 实现为准,官方设计规范见桌面设计。
  • Q:ProgressStyle 会替换现有 Notification.ProgressStyle 的媒体进度吗? A:不会互相替换;ProgressStyle 面向「里程碑叙事」,与媒体播放进度、下载百分比通知并存使用。
  • Q:竖排文字能直接让 Compose 页面竖排吗? A:不能,官方明确高级文本 API 尚未支持;当前用 VERTICAL_TEXT_FLAG 在 Canvas 层自绘,或等 Jetpack 跟进。
  • Q:三按钮用户能拿到预测动画吗? A:能,前提是应用已完成预测性返回迁移;长按返回键即可看到动画(Android 16 起,见 01 页 §七)。

本页小结 ​

本页小结:Android 16 的界面与生产力更新有一条共同主线——系统把「自适应」变成默认契约,同时把表达力(通知叙事、触感曲线、竖排文本、无障碍语义)交到应用手里。大屏/桌面窗口化侧,target36 后方向与比例限制形同虚设、退出机制到 target37 作废,越早自适应越主动;表达力侧的 ProgressStyle、触感曲线、八项无障碍 API 都是低迁移成本的直接收益项。QPR2 的自动主题图标提醒我们:次要发布也在持续改变观感,别只盯 major。

参考资料 ​

基于 Android 16 / API 36 · 内容为原创整理,转载请注明出处