Android 17 已发布 Beta 4,这是此发布周期中计划的最后一个 Beta 版,对于应用兼容性和平台稳定性而言,这是一个重要的里程碑。无论您是微调应用的用户体验、确保流畅的边缘到边缘渲染,还是利用最新的 API,Beta 4 都能提供您进行测试所需的近乎最终的环境。
让您的应用、库、工具和游戏引擎做好准备!
如果您开发 Android SDK、库、工具或游戏引擎,那么现在准备好所有必要的更新至关重要,这样可以防止您的下游应用和游戏开发者因兼容性问题而受阻,并允许他们以最新的 SDK 功能为目标。如果需要更新才能完全支持 Android 17,请告知您的下游开发者。
测试包括使用 Google Play 或其他方式将您的正式版应用或使用您的库或引擎的测试应用安装到搭载 Android 17 Beta 4 的设备或模拟器上。完成应用的所有流程,并查找功能或界面问题。每个 Android 版本都包含平台变更,旨在提升隐私保护、安全性以及整体用户体验;请查看对在 Android 17 上运行的应用和以 Android 17 为目标平台的应用有影响的行为变更,以便有重点地进行测试,包括以下内容:
- 在大屏幕上调整大小: 以 Android 17 为目标平台后,您将无法选择退出在大屏幕上保持屏幕方向、调整大小和宽高比限制。
- 动态代码加载: 如果您的应用以 Android 17 或更高版本为目标平台,那么 Android 14 中引入的 DEX 和 JAR 文件的更安全动态代码加载 (DCL) 保护现在也适用于原生库。使用 System.load() 加载的所有原生文件都必须标记为只读。否则,系统会抛出 UnsatisfiedLinkError。
- 默认启用 CT:证书透明度 (CT)默认处于启用状态。(在 Android 16 上,CT 可用,但应用必须 选择启用。)
- 本地网络保护: 以 Android 17 或更高版本为目标平台的应用默认情况下会 被阻止访问本地网络。如果可以,请切换为使用保护隐私权的选择器,并使用新的 ACCESS_LOCAL_NETWORK 权限进行广泛的持久访问。
- 强化后台音频: 从 Android 17 开始,音频框架会强制执行 后台音频互动限制,包括音频播放、音频焦点请求和音量更改 API。根据您的反馈,自 Beta 2 以来,我们进行了一些更改,包括在 FGS 强制执行期间使用 targetSDK gating,以及豁免闹钟音频。如需了解完整详情,请参阅 更新后的指南。
应用内存限制
Android 将根据设备的总 RAM 引入应用内存限制,以便为您的应用和 Android 用户打造更稳定、更具确定性的环境。在 Android 17 中,限制设置得较为保守,旨在建立系统基准,以便在极端内存泄漏和其他异常值触发系统范围的不稳定性(导致界面卡顿、耗电过快和应用被终止)之前,以这些异常值为目标。虽然我们预计对绝大多数应用会话的影响很小,但我们建议您遵循 以下内存最佳实践,包括建立内存基准。
在当前实现中,如果您的应用受到影响,ApplicationExitInfo 中的 getDescription 将包含字符串“MemoryLimiter”。您还可以将 基于触发器的性能分析与 TRIGGER_TYPE_ANOMALY 结合使用,以获取在达到内存限制时收集的堆转储。
为了帮助您查找内存泄漏,Android Studio Panda 直接在 Android Studio 性能分析器中添加了 LeakCanary 集成,作为 IDE 中上下文相关且与源代码完全集成的专用任务。
更小的内存占用空间直接转化为更流畅的性能、更长的电池续航时间和所有外形规格的高级体验。让我们携手为 Android 生态系统打造更快、更可靠的未来!
应用异常的性能分析触发器
Android 引入了一项设备端异常检测服务,用于监控资源密集型行为和潜在的兼容性回归。此服务与 ProfilingManager 集成,可让您的应用接收由特定系统检测到的事件触发的性能分析工件。
使用 TRIGGER_TYPE_ANOMALY 触发器检测系统性能问题,例如过多的 binder 调用和过多的内存使用量。当应用违反操作系统定义的内存限制时,异常触发器允许开发者接收特定于应用的堆转储,以帮助识别和修复内存问题。此外,对于过多的 binder 垃圾内容,异常触发器会提供有关 binder 事务的堆栈抽样性能分析。
此 API 回调发生在系统强制执行任何操作之前。例如,它可以帮助开发者在应用因超出内存限制而被系统终止之前收集调试数据。如需了解如何使用触发器,请查看有关 基于触发器的性能分析的文档。
val profilingManager = applicationContext.getSystemService(ProfilingManager::class.java) val triggers = ArrayList<ProfilingTrigger>() triggers.add(ProfilingTrigger.Builder( ProfilingTrigger.TRIGGER_TYPE_ANOMALY)) val mainExecutor: Executor = Executors.newSingleThreadExecutor() val resultCallback = Consumer<ProfilingResult> { profilingResult -> if (profilingResult.errorCode != ProfilingResult.ERROR_NONE) { // upload profile result to server for further analysis setupProfileUploadWorker(profilingResult.resultFilePath) } profilingManager.registerForAllProfilingResults(mainExecutor, resultCallback) profilingManager.addProfilingTriggers(triggers) }
Android 密钥库中的后量子加密 (PQC)
Android 密钥库 添加了对 NIST 标准化 ML-DSA(基于模块格的数字签名算法)的支持。在受支持的设备上,您可以生成 ML-DSA 密钥,并使用它们在设备的安全硬件中生成量子安全签名。Android 密钥库通过标准 Java 加密架构 API(KeyPairGenerator、KeyFactory 和 Signature)公开 ML-DSA-65 和 ML-DSA-87 算法变体。如需了解更多详情,请参阅我们的 开发者文档。
KeyPairGenerator generator = KeyPairGenerator.getInstance( “ML-DSA-65”, "AndroidKeyStore"); generator.initialize( new KeyGenParameterSpec.Builder( “my-key-alias”, KeyProperties.PURPOSE_SIGN | KeyProperties.PURPOSE_VERIFY) .build()); KeyPair keyPair = generator.generateKeyPair();
开始使用 Android 17
您可以 注册任何受支持的 Pixel 设备,以通过无线下载方式获取此 Android Beta 版更新和未来的 Android Beta 版更新。如果您没有 Pixel 设备,可以在 Android Studio 中 使用 Android 模拟器中的 64 位系统映像。
如果您目前参与了 Android Beta 版计划,系统会向您提供 Beta 4 的无线下载更新。
请继续在 反馈页面上 报告问题和提交功能请求。我们越早收到您的反馈,在最终版本的开发工作中采纳的意见就越多。
为了获得 Android 17 的最佳开发体验,我们建议您使用 Android Studio (Panda) 的最新预览版。设置完成后,您应执行以下操作:
- 使用新版 SDK 进行编译,在 CI 环境中进行测试,并在 反馈页面上的跟踪器中报告问题。
- 测试当前应用的兼容性,了解您的应用是否受到 Android 17 中变更的影响,并将应用安装到搭载 Android 17 的设备或模拟器上并进行全面测试。
在整个 Android 17 发布周期内,我们会定期更新 预览版/Beta 版系统映像和 SDK。安装 Beta 版 build 后,您将自动通过无线下载方式获取所有后续预览版和 Beta 版的未来更新。
如需了解完整信息,请访问 Android 17 开发者网站。
加入对话
您的反馈仍然是我们最宝贵的财富。无论您是 Canary 渠道的抢先体验用户,还是 在 Beta 4 上进行测试的应用开发者,都可以考虑加入我们的社区并提交反馈。我们听见了您的心声。
继续阅读
-
产品资讯
每年,Google I/O 大会都会发布涵盖各个生态系统和产品(包括 Android 开发)的新公告和资源。随着开发工作转向 AI 和智能体辅助工具,我们扩展了产品,以便更好地支持您,无论您决定如何为 Android 构建应用。
Simona Milanovic • 阅读用时:2 分钟
-
产品资讯
在 2026 年 Google I/O 大会上,我们展示了 Android 生态系统的最新进展如何帮助您提升应用质量,同时最大限度地提高开发效率。
Ataul Munim • 阅读用时:3 分钟
-
产品资讯
在 2026 年 Google I/O 大会上,我们介绍了 Android 从操作系统到智能系统的转变。我们还展示了如何使用系统原生构建智能体验,以及如何将 Google AI 的强大功能引入您的应用。
Jingyu Shi • 阅读用时:2 分钟
随时了解最新动态
每周通过电子邮件接收最新的 Android 开发洞见 每周。