下表列出了所有记录的可能会影响应用开发者的功能和行为变更。请使用此列表查找影响您的变更,然后使用相应的链接阅读文档。
类别 | 类型 | 名称 |
---|---|---|
无障碍 | 变更(所有应用) |
使用非线性字体缩放测试应用 由于 Android 支持字体放大高达 200%,因此您应执行界面测试,确保您的应用可以容纳更大的字体,而不会影响易用性。 |
无障碍 | 新功能和 API |
将字体放大高达 200% 的非线性字体 Android 支持字体放大高达 200%,为弱视用户提供了符合《网络内容无障碍指南》(WCAG) 的其他无障碍选项。 |
摄像头和媒体 | 新功能和 API |
图片的 Ultra HDR Android 14 新增了对高动态范围 (HDR) 图片的支持,可在拍摄照片时保留更多来自传感器的信息,从而呈现鲜艳的色彩和更高的对比度。 |
摄像头和媒体 | 新功能和 API |
相机扩展程序中的缩放、对焦、预览等功能 Android 14 升级并改进了相机扩展程序,让应用能够处理更长的处理时间,从而使用计算密集型算法(例如在受支持的设备上进行低光摄影)改善图片质量。 |
摄像头和媒体 | 新功能和 API |
传感器内缩放 实现请求替换控件,让用户即使在其他相机控件准备就绪之前也能进行缩放控制。 |
摄像头和媒体 | 新功能和 API |
无损 USB 音频 Android 14 支持无损音频格式,可通过 USB 有线耳机提供发烧友级体验。 |
核心功能 | 变更(所有应用) |
系统在默认情况下会拒绝安排精确闹钟 对于以 Android 13 及更高版本为目标平台的大多数新安装应用,系统不再预先向其授予 SCHEDULE_EXACT_ALARM 权限,该权限默认处于拒绝状态。 |
核心功能 | 变更(所有应用) |
上下文注册的广播会在应用缓存期间加入队列 当上下文注册的广播已加入队列以传送给处于缓存状态的应用时,系统可能会将这些广播放入队列中。 |
核心功能 | 变更(所有应用) |
应用只能终止自己的后台进程 当您的应用调用 killBackgroundProcesses() 时,API 只能终止您自己应用的后台进程。 |
核心功能 | 变更(所有应用) |
为请求 MTU 的第一个 GATT 客户端将 MTU 设置为 517 Android 蓝牙堆栈更严格地遵循 《蓝牙核心规范第 5.2 版》,并在第一个 GATT 客户端使用 BluetoothGatt#requestMtu(int) API 请求 MTU 时将 BLE ATT MTU 请求设置为 517 字节,并忽略该 ACL 连接上的所有后续 MTU 请求。 |
核心功能 | 变更(所有应用) |
应用被放入受限待机模式存储分区的新原因 Android 14 引入了应用被放入受限待机模式存储分区的新原因。 |
核心功能 | 变更(所有应用) |
mlock 限制为 64 KB 在 Android 14 及更高版本中,平台将每个进程可以使用 mlock() 锁定的最大内存量减少到 64 KB。 |
核心功能 | 变更(所有应用) |
系统强制执行缓存应用资源使用 在应用进程进入缓存状态后不久,系统会禁止后台工作,直到进程组件重新进入生命周期的活跃状态。 |
核心功能 | 变更(以 Android 14 及更高版本为目标平台的应用) |
必须提供前台服务类型 如果应用以 Android 14(API 级别 34)或更高版本为目标平台,则必须为应用中的每个前台服务指定至少一个前台服务类型。 |
核心功能 | 变更(以 Android 14 及更高版本为目标平台的应用) |
在 BluetoothAdapter 中强制执行 BLUETOOTH_CONNECT 权限 对于以 Android 14(API 级别 34)或更高版本为目标平台的应用,Android 14 会在调用 BluetoothAdapter getProfileConnectionState() 方法时强制执行 BLUETOOTH_CONNECT 权限。 |
核心功能 | 变更(以 Android 14 及更高版本为目标平台的应用) |
OpenJDK 17 更新 在 OpenJDK 17 更新中,一些更改会影响应用兼容性,例如对正则表达式和 UUID 处理的更改。 |
核心功能 | 变更(以 Android 14 及更高版本为目标平台的应用) |
JobScheduler 强化了回调和网络行为 如果您的应用以 Android 14(API 级别 34)或更高版本为目标平台,并且超出主线程上授予的时间,则会触发包含错误消息的 ANR。 |
用户体验 | 变更(以 Android 14 及更高版本为目标平台的应用) |
功能块启动 API Android 14 弃用了 TileService#startActivityAndCollapse(Intent) ,改用 TileService#startActivityAndCollapse(PendingIntent) 。 |
开发者工作效率和工具 | 新功能和 API |
Credential Manager Android 14 引入了 Credential Manager,它在单个 API 中支持多种登录方法,包括用户名和密码、通行密钥和联合登录解决方案(如“使用 Google 账号登录”)。 |
开发者工作效率和工具 | 新功能和 API |
健康数据共享 从 Android 14 开始,Health Connect 已成为 Android 平台的一部分,可通过 Google Play 系统更新接收更新,而无需单独下载。 |
开发者工作效率和工具 | 新功能和 API |
OpenJDK 17 更新 Android 14 包含一些可进一步与 OpenJDK 17 LTS 版本保持一致的功能和改进,包括面向应用开发者和平台开发者的库更新和 Java 17 语言支持。 |
开发者工作效率和工具 | 新功能和 API |
针对应用商店的改进 Android 14 引入了多个新的 PackageInstaller API,可帮助应用商店改善其用户体验。 |
开发者工作效率和工具 | 新功能和 API |
应用元数据包 从 Android 14 开始,Android 软件包安装程序可让您指定应用元数据(例如数据安全做法),以在 Google Play 等应用商店页面上架。 |
开发者工作效率和工具 | 新功能和 API |
屏幕截图检测 我们提供了一种可保护隐私的 API,如果用户在应用 activity 可见时截取屏幕截图,该 API 会调用回调并显示消息框消息。 |
图形 | 新功能和 API |
路径现在可查询和插值 您可以查询路径以了解其内部内容,在结构完全匹配的路径中进行插值,并实现变形效果。 |
图形 | 新功能和 API |
带有顶点着色器和片段着色器的自定义网格 Android 14 新增了对自定义网格的支持,这些网格可以定义为三角形或三角形条状,并且可以选择是否编入索引。 |
图形 | 新功能和 API |
Canvas 的硬件缓冲区渲染程序 为了帮助使用 Android 的 Canvas API 通过硬件加速绘制到 HardwareBuffer ,Android 14 引入了 HardwareBufferRenderer 。 |
国际化 | 新功能和 API |
各应用语言偏好设定 Android 14 扩展了 Android 13(API 级别 33)中引入的按应用设定语言功能,并提供了一些额外的功能。 |
国际化 | 新功能和 API |
Grammatical Inflection API 借助 Grammatical Infection API,您可以向具有语法性别的语言的用户提供支持,从而针对这些语言提供更个性化、更自然的用户体验。 |
国际化 | 新功能和 API |
地区偏好设置 当用户更改其地区偏好设置并在应用中镜像这些偏好设置时,应用可以接收通知。 |
限制非 SDK 接口 | 变更(以 Android 14 及更高版本为目标平台的应用) |
更新了非 SDK 接口限制 Android 14 包含更新后的受限制非 SDK 接口列表(基于与 Android 开发者之间的协作以及最新的内部测试)。 |
隐私设置 | 变更(以 Android 14 及更高版本为目标平台的应用) |
对照片和视频的部分访问权限 当应用请求在 Android 13(API 级别 33)中引入的任何视觉媒体权限( READ_MEDIA_IMAGES 和 READ_MEDIA_VIDEO )时,用户可以授予其对照片和视频的部分访问权限。 |
安全 | 变更(所有应用) |
最低可安装目标 API 级别 用户无法安装 targetSdkVersion 低于 23 的应用。 |
安全 | 变更(所有应用) |
系统可能会隐去媒体所有者软件包名称 除非应用满足特定条件,否则系统会隐去 OWNER_PACKAGE_NAME 的值。 |
安全 | 变更(以 Android 14 及更高版本为目标平台的应用) |
对隐式 intent 和待处理 intent 的限制 对于以 Android 14(API 级别 34)或更高版本为目标平台的应用,Android 会限制应用向内部应用组件发送隐式 intent。 |
安全 | 变更(以 Android 14 及更高版本为目标平台的应用) |
运行时注册的广播接收器必须指定导出行为 以 Android 14(API 级别 34)或更高版本为目标平台并使用上下文注册的接收器的应用和服务必须指定一个标志,以指明接收器是否应导出到设备上的所有其他应用。 |
安全 | 变更(以 Android 14 及更高版本为目标平台的应用) |
更安全地动态加载代码 如果应用以 Android 14(API 级别 34)或更高版本为目标平台,并且使用动态代码加载 (DCL) 功能,则必须将所有动态加载的文件标记为只读。 |
安全 | 变更(以 Android 14 及更高版本为目标平台的应用) |
针对从后台启动 activity 的额外限制 对于以 Android 14(API 级别 34)或更高版本为目标平台的应用,如果应用想要在发送其他应用的 PendingIntent 或绑定该应用的服务时为自己的后台 activity 授予启动其他应用的特权,则必须选择启用。 |
安全 | 变更(以 Android 14 及更高版本为目标平台的应用) |
Zip 路径遍历 对于以 Android 14(API 级别 34)或更高版本为目标平台的应用,Android 通过限制 Zip 文件条目名称所含的内容来防止 Zip 路径遍历漏洞。 |
安全 | 变更(以 Android 14 及更高版本为目标平台的应用) |
每次 MediaProjection 捕获会话都需要征得用户同意 对于以 Android 14(API 级别 34)或更高版本为目标平台的应用,应用必须在每次 MediaProjection 捕获会话之前征得用户同意。 |
用户体验 | 变更(所有应用) |
关于不可关闭通知用户体验方式的变更 如果您的应用向用户显示不可关闭的前台通知,请注意:Android 14 已更改此行为,允许用户关闭此类通知。 |
用户体验 | 变更(所有应用) |
数据安全信息更显眼 现在,您的应用的数据安全信息(例如数据共享做法)会出现在某些权限理由系统对话框和系统通知中。 |
用户体验 | 变更(以 Android 14 及更高版本为目标平台的应用) |
安全的全屏 intent 通知 对于以 Android 14(API 级别 34)或更高版本为目标平台的应用,只有提供通话和闹钟的应用才能使用 USE_FULL_SCREEN_INTENT 权限支持全屏 intent 通知。 |
用户体验 | 新功能和 API |
Sharesheet 自定义操作和排名改进 Android 14 更新了系统 Sharesheet,以便为用户提供自定义应用操作和信息更丰富的预览结果。 |
用户体验 | 新功能和 API |
支持内置和自定义动画 使用新的系统返回 API 的应用可选择启用预测性返回,以自动接收应用内动画并支持自定义转换。 |
用户体验 | 新功能和 API |
大屏设备 OEM 按应用替换项 您可以使用清单属性为应用停用 OEM 替换项。 |
用户体验 | 新功能和 API |
大屏设备用户按应用替换项 借助 Android 14 QPR1,用户可以在大屏设备上通过新的设置菜单应用按应用替换项。应用可以停用某些替换项。 |
Java 和 OpenJDK 是 Oracle 及/或其关联公司的商标或注册商标。