Android 17 功能和变更列表

下表列出了所有记录的可能会影响应用开发者的功能和行为变更。请使用此列表查找影响您的变更,然后点击相应的链接阅读文档。

类别 类型 名称
安全 变更(所有应用) 屏蔽跨资料环回流量
默认情况下,系统不再允许跨资料环回流量。
安全 变更(所有应用) 每个应用的密钥库限制
应用可以创建的密钥库密钥数量有限制,具体取决于其目标 API 级别;创建更多密钥会导致异常。
安全 变更(所有应用) 限制隐式 URI 授予
如果 Android 应用使用 URI 启动 intent,我们建议它们显式预分配所有必要的 URI 权限,而不是依赖系统自动授予这些权限。
安全 变更(以 Android 17 及更高版本为目标平台的应用) 默认启用 CT
在 Android 16 中,我们允许应用选择启用证书透明度功能。对于 Android 17,我们计划为设备执行的所有 TLS 连接启用证书透明度。
安全 变更(以 Android 17 及更高版本为目标平台的应用) 更安全的原生 DCL - C
应用必须确保 DCL 模块不会在未被检测到的情况下被覆盖。
安全 变更(以 Android 17 及更高版本为目标平台的应用) 限制 CP2 数据视图中的 PII 字段
以 Android 17 或更高版本为目标平台的应用无法访问 CP2 数据视图中的某些 PII 字段。
安全 变更(以 Android 17 及更高版本为目标平台的应用) 在 CP2 中强制执行严格的 SQL 检查
对于以 Android 17 或更高版本为目标平台的应用,当在没有 READ_CONTACTS 权限的情况下访问 ContactsContract.Data 表时,联系人提供程序 2 会强制执行严格的 SQL 查询验证。
安全 新功能和 API Android 高级保护模式 (AAPM)
为 Android 用户提供了一组强大的新安全功能。
安全 新功能和 API PQC APK 签名
添加了对使用新的后量子密码 (PQC) 签名密钥对 APK 进行签名的支持。
核心功能 变更(所有应用) 应用内存限制
Android 17 根据设备的总 RAM 引入了新的应用内存限制。
核心功能 变更(所有应用) 应用内存运行时限制
系统将更严格地执行应用内存限制。超出这些限制可能会导致应用崩溃。
核心功能 变更(所有应用) usesClearTraffic 废弃计划
我们计划在未来的版本中废弃 usesClearTraffic。需要建立 HTTP 连接的应用应改为使用网络安全配置文件。
核心功能 变更(以 Android 17 及更高版本为目标平台的应用) 新的 NPU 功能标志
以 Android 17 为目标平台的应用如果需要访问 NPU,则必须声明 android.hardware.npu 功能。
核心功能 变更(以 Android 17 及更高版本为目标平台的应用) 通知自定义视图的内存限制
Android 17(API 级别 37)针对使用自定义视图的通知引入了更严格的内存用量检查
核心功能 变更(以 Android 17 及更高版本为目标平台的应用) 静态 final 字段现在不可修改
以 Android 17 或更高版本为目标平台的应用无法修改静态 final 字段。尝试这样做会导致异常。
核心功能 变更(以 Android 17 及更高版本为目标平台的应用) MessageQueue 的新无锁实现
以 Android 17 或更高版本为目标平台的应用将获得 MessageQueue 的新无锁实现。
核心功能 新功能和 API 新的 ProfilingManager 触发器
Android 17 为 ProfilingManager 引入了多个新的系统触发器,以帮助您收集深入数据来调试性能问题。
核心功能 新功能和 API JobDebugInfo API
新的 `JobDebugInfo` API,可帮助开发者调试其 JobScheduler 作业。
隐私权 变更(所有应用) 消息访问权限受限
现在,大多数应用都无法访问端到端加密的消息。
隐私权 变更(以 Android 17 及更高版本为目标平台的应用) 标准短信的一次性密码保护
非优先应用无法立即访问一次性密码 (OTP),即使用户已向其授予短信权限也是如此。
隐私权 变更(以 Android 17 及更高版本为目标平台的应用) 以 Android 17 为目标平台的应用需要本地网络权限
以 Android 17 为目标平台的应用无法访问本地设备,除非它们在附近设备组中拥有适当的权限。在 Android 16 中,这是一项可自主选择是否启用的选项。
隐私权 变更(以 Android 17 及更高版本为目标平台的应用) ECH(加密客户端 Hello)已启用
对于以 Android 17 或更高版本为目标平台的应用,系统会为 TLS 连接启用 ECH。
隐私权 变更(以 Android 17 及更高版本为目标平台的应用) 在实体设备上隐藏密码
设备不再显示通过实体设备输入的最近一次密码。
隐私权 新功能和 API Android 联系人选择器
Android 17 引入了一个新的联系人选择器,作为一种无需权限即可让应用访问用户联系人的方式。
人工干预 变更(所有应用) 默认情况下,触控板在指针捕获期间提供相对事件
从 Android 17 开始,触控板将提供相对指针事件(类似于鼠标事件),而不是绝对事件。
用户体验和系统界面 变更(所有应用) 旋转后恢复默认 IME 可见性
当设备旋转或配置更改时,系统会使用默认可见性模式来确定是否显示 IME。
用户体验和系统界面 变更(以 Android 17 及更高版本为目标平台的应用) 缩减 WebView 的用户代理
从 Android 17 开始,WebView 的默认用户代理字符串会更短。
用户体验和系统界面 新功能和 API 专用 Google 助理音量流
Android 17 为 Google 助理应用引入了专用 Google 助理音量流,可实现与媒体音量的独立控制。有权访问新 MODE_ASSISTANT_CONVERSATION 的 Google 助理应用可以进一步改进音量控制 - 在主动播放之外或通过蓝牙外设进行控制。
用户体验和系统界面 新功能和 API MetricStyle 模板
Android 17 引入了 MetricStyle 模板,可支持健康与健身、计时器、秒表和旅行等应用场景。
用户体验和系统界面 新功能和 API Live Update - 语义颜色 API
Live Updates 引入了语义颜色 API,以支持与安全、危险和谨慎密切相关的颜色。
用户体验和系统界面 新功能和 API 接力
借助接力,用户可以在一台设备上开始任务,然后在另一台设备上继续完成任务。
媒体 变更(所有应用) 后台音频安全加固
应用无法播放音频或使用其他干扰性音频 API,除非它们可见或具有前台服务。
媒体 新功能和 API 新的 BYPASS_CONCURRENT_RECORD_AUDIO_RESTRICTION 权限,用于捕获敏感音频
针对通话期间的并发音频捕获和其他敏感音频用例引入了新的 BYPASS_CONCURRENT_RECORD_AUDIO_RESTRICTION 权限。
连接 变更(所有应用) 蓝牙绑定丢失时的自主重新配对
系统会在后台自动重新建立蓝牙绑定,而无需用户在“设置”中手动取消配对和重新配对设备
连接 变更(以 Android 17 及更高版本为目标平台的应用) RFCOMM 的一致 BluetoothSocket read() 行为
以 Android 17 或更高版本为目标平台的应用将使 BluetoothSocket RFCOMM 实现与标准 Java InputStream 行为保持一致。
连接 新功能和 API 受限卫星网络
重点在于让 Android 应用能够在低带宽卫星网络上有效运行。
无障碍 变更(以 Android 17 及更高版本为目标平台的应用) 对复杂 IME 实体键盘输入的无障碍支持
通过允许 IME 通过编辑器向无障碍服务传递更多文本更改信息,此功能有助于屏幕阅读器为复杂 IME 提供更一致、自然且可靠的反馈。
设备类型 变更(以 Android 17 及更高版本为目标平台的应用) 平台 API 变更,用于忽略大屏 (sw>=600dp) 上的屏幕方向、尺寸调整和宽高比限制
Android 16 引入了平台 API 变更,用于忽略大屏 (sw >= 600dp) 上的屏幕方向、尺寸调整和宽高比限制。以 Android 17 为目标平台的应用将无法再选择停用这些变更。
图形 新功能和 API Android 上的 WebGPU
OpenGL ES 支持正在转向维护模式,新功能开发将在 Vulkan + WebGPU 中完成。