下表列出了所有记录的功能和行为更改,这些更改可能会影响应用开发者。使用此列表查找影响您的更改,然后使用相应的链接阅读文档。
类别 | 类型 | 名称 |
---|---|---|
辅助功能 | 更改(所有应用) | 使用非线性字体缩放测试您的应用 由于 Android 支持高达 200% 的字体缩放,因此您应该执行 UI 测试以确保您的应用能够适应更大的字体大小,而不会影响可用性。 |
辅助功能 | 新功能和 API | 高达 200% 的非线性字体缩放 Android 支持高达 200% 的字体缩放,为低视力用户提供了符合网络内容可访问性指南 (WCAG) 的更多辅助功能选项。 |
相机和媒体 | 新功能和 API | 图像的超 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时将其请求为517字节,并忽略该ACL连接上后续的所有MTU请求。 |
核心功能 | 更改(所有应用) | 应用被置于受限待机状态的新原因 Android 14 引入了一个新的原因,应用可能会被置于受限待机状态。 |
核心功能 | 更改(所有应用) | mlock 限制为 64 KB 在 Android 14 及更高版本中,平台将使用 mlock() 锁定的最大内存减少到每个进程 64 KB。 |
核心功能 | 更改(所有应用) | 系统强制执行缓存应用资源使用 在应用进程进入缓存状态后不久,后台工作将被禁止,直到进程组件重新进入生命周期的活动状态。 |
核心功能 | 更改(面向 14+ 的应用) | 需要前台服务类型 如果您的应用面向 Android 14(API 级别 34)或更高版本,则必须为应用中的每个前台服务指定至少一种前台服务类型。 |
核心功能 | 更改(面向 14+ 的应用) | 在 BluetoothAdapter 中强制执行 BLUETOOTH_CONNECT 权限 Android 14 在调用 BluetoothAdapter 的 getProfileConnectionState() 方法时,针对 Android 14(API 级别 34)或更高版本的应用强制执行BLUETOOTH_CONNECT 权限。 |
核心功能 | 更改(面向 14+ 的应用) | OpenJDK 17 更新 作为 OpenJDK 17 更新的一部分,有一些更改可能会影响应用兼容性,例如正则表达式和 UUID 处理方面的更改。 |
核心功能 | 更改(面向 14+ 的应用) | JobScheduler 加强回调和网络行为 如果您的应用面向 Android 14(API 级别 34)或更高版本,并在主线程上超过了授予的时间,则应用会触发 ANR 并显示错误消息。 |
用户体验 | 更改(面向 14+ 的应用) | 磁贴启动 API Android 14 已弃用 TileService#startActivityAndCollapse(Intent) ,转而支持TileService#startActivityAndCollapse(PendingIntent) 。 |
开发者生产力和工具 | 新功能和 API | 凭据管理器 Android 14 引入了凭据管理器,它支持多种登录方法,包括用户名和密码、密钥以及联合登录解决方案(例如“使用 Google 登录”),并且都通过单个 API 实现。 |
开发者生产力和工具 | 新功能和 API | 健康连接 从 Android 14 开始,健康连接成为平台的一部分,并通过 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,当用户在应用活动可见时截取屏幕截图时,它会调用回调并显示吐司消息。 |
图形 | 新功能和 API | 路径现在可查询和插值 查询路径以了解其内部内容,在结构完全匹配的路径之间进行插值,并启用变形效果。 |
图形 | 新功能和 API | 使用顶点和片段着色器的自定义网格 Android 14 添加了对自定义网格的支持,这些网格可以定义为三角形或三角形条带,并且可以选择进行索引。 |
图形 | 新功能和 API | Canvas 的硬件缓冲区渲染器 为了帮助使用 Android 的 Canvas API 使用硬件加速绘制到HardwareBuffer 中,Android 14 引入了HardwareBufferRenderer 。 |
国际化 | 新功能和 API | 每个应用的语言偏好设置 Android 14 在 Android 13(API 级别 33)中引入的每个应用的语言功能的基础上,扩展了一些其他功能。 |
国际化 | 新功能和 API | 语法变格 API 语法感染 API 可帮助您为使用具有语法性别的语言的用户添加支持,为这些语言提供更个性化和自然的用户体验。 |
国际化 | 新功能和 API | 区域偏好设置 当用户更改其区域偏好设置时,应用可以接收通知并在应用中反映这些偏好设置。 |
非 SDK 接口限制 | 更改(面向 14+ 的应用) | 非 SDK 接口限制的更新 Android 14 包含基于与 Android 开发人员的协作和最新的内部测试而更新的受限非 SDK 接口列表。 |
隐私 | 更改(面向 14+ 的应用) | 部分访问照片和视频 当应用请求 Android 13(API 级别 33)中引入的任何视觉媒体权限( READ_MEDIA_IMAGES 和READ_MEDIA_VIDEO )时,用户可以授予对其照片和视频的部分访问权限。 |
安全 | 更改(所有应用) | 最低可安装目标 API 级别 具有低于 23 的targetSdkVersion 的应用无法安装。 |
安全 | 更改(所有应用) | 媒体所有者软件包名称可能会被隐藏 除非应用满足某些条件,否则 OWNER_PACKAGE_NAME 的值会被隐藏。 |
安全 | 更改(面向 14+ 的应用) | 对隐式和挂起意图的限制 对于面向 Android 14(API 级别 34)或更高版本的应用,Android 限制应用向内部应用组件发送隐式意图。 |
安全 | 更改(面向 14+ 的应用) | 运行时注册的广播接收器必须指定导出行为 面向 Android 14(API 级别 34)或更高版本并使用上下文注册接收器的应用和服务必须指定一个标志,以指示接收器是否应导出到设备上的所有其他应用。 |
安全 | 更改(面向 14+ 的应用) | 更安全的动态代码加载 如果您的应用面向 Android 14(API 级别 34)或更高版本并使用动态代码加载 (DCL),则所有动态加载的文件必须标记为只读。 |
安全 | 更改(面向 14+ 的应用) | 对从后台启动活动的额外限制 面向 Android 14(API 级别 34)或更高版本的应用必须选择加入,如果它们希望在发送另一个应用的 PendingIntent 或绑定该应用的服务时授予其后台活动启动权限。 |
安全 | 更改(面向 14+ 的应用) | Zip 路径遍历 对于面向 Android 14(API 级别 34)或更高版本的应用,Android 通过限制 zip 文件条目名称可以包含的内容来防止 Zip 路径遍历漏洞。 |
安全 | 更改(面向 14+ 的应用) | 每个 MediaProjection 捕获会话都需要用户同意 对于面向 Android 14(API 级别 34)或更高版本的应用,应用必须在每个 MediaProjection 捕获会话之前请求用户同意。 |
用户体验 | 更改(所有应用) | 用户体验不可取消通知的方式的更改 如果您的应用向用户显示不可取消的前台通知,Android 14 已更改行为以允许用户取消此类通知。 |
用户体验 | 更改(所有应用) | 数据安全信息更易于查看 您的应用的数据安全信息(例如数据共享实践)现在会出现在某些权限理由系统对话框和系统通知中。 |
用户体验 | 更改(面向 14+ 的应用) | 安全的全屏意图通知 对于面向 Android 14(API 级别 34)或更高版本的应用,只有提供呼叫和闹钟的应用才能使用 USE_FULL_SCREEN_INTENT 权限来支持全屏意图通知。 |
用户体验 | 新功能和 API | 共享表自定义操作和改进的排名 Android 14 更新了系统共享表以支持自定义应用操作,并为用户提供更具信息性的预览结果。 |
用户体验 | 新功能和 API | 对内置和自定义动画的支持 使用新的系统后退 API 的应用可以选择预测性后退以自动接收应用内动画,并支持自定义过渡。 |
用户体验 | 新功能和 API | 大型屏幕 OEM 每个应用的覆盖 清单属性使您能够禁用应用的 OEM 覆盖。 |
用户体验 | 新功能和 API | 大屏幕用户每个应用的覆盖 Android 14 QPR1 使用户能够通过大型屏幕设备上的新设置菜单应用每个应用的覆盖。应用可以禁用某些覆盖。 |
Java 和 OpenJDK 是 Oracle 和/或其关联公司的商标或注册商标。