Android 14 Beta 3 发布,平台稳定性里程碑


Android 14 Beta 3 现已发布,标志着进入到 Android 开发周期的下一个阶段。Beta 3 依旧围绕着其核心主题打造,即隐私、安全、性能、开发者生产力和用户定制,同时继续完善平板电脑、可折叠设备等大屏设备上的体验。

Beta 3 也让 Android 14 抵达平台稳定性里程碑,这意味着开发者 API 和所有面向应用的行为都已最终确定,供大家评估和整合进自己的应用。一些重点更新内容包括新的无障碍功能 (如非线性字体放大)、隐私功能更新 (包括照片/视频的部分访问)、新的手势导航动画,以及与 OpenJDK 17 LTS 版本进一步对齐的功能。

非线性字体放大

从 Android 14 开始,系统默认支持字体放大至 200%。这项变更为弱视用户提供了符合网络内容无障碍指南 (WCAG) 的更丰富的无障碍功能选项。请在启用最大文字尺寸 (200%) 的条件下进行用户界面测试,以确保你的应用能适应更大的文字尺寸且不影响可用性。为了更好地适配此功能,也请确保你在 Configuration 或 DisplayMetrics 中没有硬编码计算 sp,以及通过 TypedValue 的 applyDimension() 和 deriveDimension() 在 sp 和 px 之间进行转换。

对照片和视频授予部分访问权限

当你的应用请求任意视觉媒体权限 (READ_MEDIA_IMAGES 或 READ_MEDIA_VIDEO,于 Android 13,API 33 中引入) 时,用户可以仅授予对媒体库的部分访问权限。当你的应用切换至后台,或当用户主动杀掉你的应用时,系统会将这些部分访问权限做为单次授权处理,继而最终关闭这些权限。如果你的应用有遵守此类授权的最佳实践,此项变更不会造成影响。Android 14 引入了 READ_MEDIA_VISUAL_USER_SELECTED 权限来帮助应用更好地支持这些变更。建议考虑使用照片选择器来为用户提供安全的方式让应用指定访问某些照片和视频,这样无需申请权限,体验也更流畅。

数据安全信息更加凸显

为了更好地保护用户隐私,Android 14 在系统中增加了一些位置来展示你在 Play 管理中心的表单中声明的信息。对于某些权限,项目团队在系统运行时权限对话框中加入了一个可点击的部分,用来进一步展示应用的数据共享情况。系统对话框的这一部分会展示诸如为什么你的应用需要和第三方共享数据等信息,以及为用户提供跳转链接,用来管理你应用的数据访问设置。建议用户审查自己应用的位置数据共享政策,并相应地更新应用在 Google Play 数据安全部分中声明的信息。


一些需要注意的变更 (适用于 targetSdkVersion 为 API 34 或更高的应用):

必须提供前台服务类型

如果你的应用以 Android 14 为目标平台,则你必须为应用中的每个前台服务指定至少一个前台服务类型。请务必选择能代表应用实际用例的前台服务类型。系统会检查你是否选择了正确的前台服务类型,以及应用是否正确请求运行时权限或使用所需的 API。比如,如果应用的前台服务类型是 FOREGROUND_SERVICE_TYPE_LOCATION,则系统会认为其需要申请 ACCESS_COARSE_LOCATION 或 ACCESS_FINE_LOCATION 权限。Android 14 为健康和远程消息传递场景新增了对应的前台服务类型,而且也为短期服务、特殊用途和系统豁免保留了新的类型。如果你应用中的某个场景和这些类型都不匹配,强烈建议将这部分逻辑迁移至使用 WorkManager 或用户发起的数据传输作业。

OpenJDK 17 更新

Android 14 的一些变更旨在让核心库与最新的 OpenJDK LTS 版本功能对齐,这些变更可能会影响到你应用的兼容性,包括正则表达式、UUID 处理、涉及到 ProGuard 的问题,以及增加的 java.lang.ClassValue。

安全变更

以 Android 14 为目标平台的应用不能再向内部组件发送特定的隐式 Intent。运行时注册的广播接收器必须指定导出行为,除非它们只接收系统广播。动态加载的代码文件必须被标记为只读。如果 zip 文件名包含 ".." 或以 "/" 开头,则 ZipFile(String) 和 ZipInputStream.getNextEntry() 会抛出 ZipException 异常,以避免触发压缩路径遍历漏洞。从后台启动 Activity 现在有了额外的限制,对调用非 SDK 接口也有了更新的限制。

更多详情可访问 Android 14 开发者网站。


相關推薦

2022-06-10

,该操作系统的最新预发布版本为我们带来了一个重要的里程碑 —— 平台稳定。 虽然名为 Beta 3,但这是 Google 推出的第四个 Beta 版(之前是 Beta 1、Beta 2 和 Beta 2.1)。与之前的 Beta 版不同,这个新的 Beta 版并没有引入太多的新

2023-04-14

近日 Google 发布了 Android 14 的第一个 Beta 版(Android 14 Beta 1),该版本围绕隐私、安全、性能、开发者生产力和用户自定义等核心特性,同时持续改善平板电脑、可折叠设备等的大屏幕设备体验。 更智能的系统 UI 在 Android 操

2023-08-12

Android 14 Beta 5 现已发布,这是 Android 14 Beta 计划中的最后一次计划更新。Beta 5 除支持 Pixel 系列的其他产品和 Android 模拟器外,还适用于 Pixel Tablet 和 Pixel Fold。 Beta 5 是 Android 14 Platform Stability 阶段的第三个版本,这意味着开发者

2023-03-10

继上个月发布了首个 Android 14 开发者预览版之后,第二版 Android 14 开发者预览版(以下简称 Android 14 DP 2)已于今天开始推出,这也是最后一个开发者预览版,之后 Android 14 将脱离开发者预览阶段,进入 Bete 测试阶段,Android 14 DP

2022-10-11

动应用中共享业务逻辑,具体来说是可通过 KMM 在 iOS 和 Android 应用中使用相同的业务逻辑代码。 关于 Kotlin Multiplatform 生态系统的演变的一些信息还包括有: Google 的 Android 团队分享了 Jetpack 中 Kotlin 多平台库的预览。作为

2022-07-14

Google 于今天正在推出 Android 13 Beta 4,该版本也是 Android 13 的最后一个测试版,Android 13 将在未来几周时间内正式发布。 衷心感谢我们的开发者社区,你们给我们提供了数以千计的错误报告和见解,帮助我们优化API、改进功

2023-09-12

讲回顾 FreeBSD 14 Beta 1本周末可用,预计在10月底前稳定发布。 FreeBSD 14带来了许多硬件支持改进和相比于FreeBSD 13系列的大量内核增强。值得注意的是,FreeBSD 14是最后一个支持32位系统的版本。尽管 FreeBSD 15将不再支持32位硬件

2022-11-16

是为计划运行在 Xbox 上的,名称也由此而来。随后有了 Android、Linux、BSD、macOS、iOS 和 Windows 操作系统的原生版。 Kodi 的可定制性很高,有许多可以更改软件外观的皮肤及各种可以访问网络内容的插件,包括 Spotify 和 Youtube。从

2022-04-02

更新 cookie 字符串的解析以允... 本文转载自《Go+ 下个里程碑:超越 cgo,无缝对接 C 语言》,作者许式伟(@xushiwei)是七牛云创始人兼 CEO,创造了 Go+ 语言。 去年(2021年)Go+ 的 slogan 从 “面向数据科学” 的语言升级到了 “面

2022-09-15

管理器 (Project Manager) 中把项目从 3.x 转换到 4.0 重构了 Android 输入处理 修复从 macOS 迁移到其他平台时,Ctrl/Cmd 键映射出现变化的问题 .NET 6 支持放弃了对 libnethost 的依赖 多项其他修复和底层改进 …… 详情查看发布公

2022-04-02

19 Rust 19 Dart 和往常一样,本季度的排名变化不大,具有稳定性。RedMonk 方面指出,除了要讨论的几个明显的例外情况外,近年来语言运动的规律就是几乎没有运动。事实上,这里的 20 种语言中,有 17 种已经连续三个季度保持

2022-06-24

Android Studio 2021.3.1(代号"Dolphin")发布了第 4 个 Beta 版本。 主要变化 ART Issue #231903117: [R8 3.3.40] 修复 dex2oat speed-profile 调用似乎在 Android 8 设备上挂起的问题 Android Gradle Plugin Issue #234865137: 修复 Lint 在 Kotlin 1.7.0-RC2

2023-08-19

用 Impeller 时,广色域色彩现已成为 iOS 上的默认设置。 Android 上 Impeller 的进度更新 继续在 Impeller 的 Vulkan 后端方面取得进展,但尚未达到官方预览期所需的质量水平。计划将在今年晚些时候以稳定版本的形式进入 Android 版 Impe

2022-12-23

本。 公告写道,NetBSD 10 在性能提升方面将会是一个重要里程碑,尤其是 NetBSD 10 的多核操作系统性能比以前的版本要快许多。不过目前的 Beta 版本启用了一些额外的内核诊断,这可能会稍微降低性能。 其他重要变化 兼容 Wi