凡铁游戏提供最新游戏下载和手游攻略!

Android 14官方源码发布:深入了解AOSP开发核心内容

发布时间:2024-09-03浏览:62

官方同时介绍了 Android 14 对开发者“影响最大的部分”,IT之家整理如下:

性能和效率

官方声称,Android 14 聚焦的重点领域之一就是“为平台带来更好的性能和效率表现”。

冻结缓存应用

在 Android 14 之前,缓存的应用可以基本不受限制地运行。在 Android 14 中,系统会在应用进入缓存后很短的时间内将其冻结,其 CPU 时间降为零。

在 Android 14 Beta 上,相关缓存进程消耗的 CPU 周期要比 Android 13 正式版设备上少 50%。

因此,常规的 Android 应用生命周期 API (如前台服务、JobScheduler 或 WorkManager)之外的后台工作将被禁止。

广播优化

为了让被冻结的应用更长时间保持冻结状态(比如不会获得 CPU 时间),官方调整了应用进入缓存状态后对上下文注册的广播的接收方式。

更快地应用启动速度

随着 Android 14 对缓存应用和广播优化措施一并到来的,是“得以打破平台缓存应用数量的长期限制”,Android 14 减少了冷启动应用的情况,而且设备 RAM 越大“改善就越明显”。

在 8GB RAM 的设备上,Beta 测试组的冷启动应用减少了 20%,而在 12GB RAM 的设备上则减少了 30%。与热启动相比,冷启动速度较慢,而且耗电量更大。这项工作有效地改善了电量消耗和整体应用启动时间。

减少内存足迹

改进 Android 运行时 (Android Runtime, ART) 对 Android 用户体验影响巨大。

代码大小是谷歌的关键指标之一:生成的文件越小,对内存 (包括 RAM 和存储空间) 的占用就越小。在 Android 14 中,ART 可将代码尺寸平均减小 9.3% 且不影响性能。

定制化

定制化体验是 Android 的核心基因,官方表示,Android 14 将进一步围绕用户的定制化体验,从而改进了无障碍和国际化功能。

非线性字体放大

从 Android 14 开始,用户可以将字体放大到 200%。

此前,Pixel 设备上的字体最多能放大至 130%。系统会采用非线性的放大曲线,让屏幕上大文本元素的放大速度和小文本元素速度不同,从而防止大文本元素被过分放大。

▲ (左)100% 字体尺寸(中) 线性放大至 200% (右)非线性放大至 200%,图源 谷歌

各应用语言偏好设定

开发者可以使用 LocaleManager.setOverrideLocaleConfig 动态更新应用的 localeConfig,以自行定义在 Android 设置页面中各个应用语言列表中的语言清单。

IME 现在可以使用 LocaleManager.getApplicationLocales 获取当前应用的界面语言,从而更新键盘语言。

从 Android Studio Giraffe 和 AGP 8.1 开始,开发者还可以对应用进行配置,让其自动支持 Android 13 各应用语言偏好设定。

新的媒体功能

▲ 图源 谷歌

Android 14 现在支持 10 位高动态范围 (HDR)图像以及超强 HDR 图像格式。该格式完全向后兼容 JPEG,应用可以无缝使用 HDR 图像,并根据需要使用标准动态范围来呈现它们。

超强 HDR 图像格式

Android 14 升级和改进了相机扩展功能,让应用支持更长的处理时间,通过计算密集型算法改善成像品质。

无损 USB 音频

Android 14 设备支持无损音频格式,让您可以通过 USB 有线耳机获得发烧级的音频体验

新的图形功能

Android 14 新增了对自定义网格的支持,这些网格可以被定义为三角形或三角形带,还能根据需要支持索引。这些网格使用 AGSL 编写,包含自定义属性、顶点跨度、varying 变量和顶点 / 片段着色器。

Canvas 硬件缓冲渲染器

Android 14 引入了 HardwareBufferRenderer,让 Android 的 Canvas API 在 HardwareBuffer 中绘制时得以使用硬件加速功能。当用例涉及到通过 SurfaceControl 与系统合成器通信以实现低延迟绘制时,此功能会特别有用。

跨设备以及多尺寸屏幕开发

Android 14 在 Android 12L 和 13 的基础上,继续对平板电脑和可折叠设备带来良好的支持: 比如让任务栏更好地支持多任务、发布针对大屏幕优化的系统应用和通知界面、Activity 嵌入,改进了信箱模式和媒体投屏等。

提升生产力

Android 14 中的许多更新会让用户的开发体验更一致、更有趣,也更高效。这些更新中的许多内容也会通过 Google Play 系统更新、Jetpack 开发库和 Google Play 服务在之前的平台版本上提供,便于覆盖更多的用户。

OpenJDK 17 支持

借助 Google Play 系统更新 (Project Mainline),超过 6 亿台设备得以收到随 Android 14 一同发布的最新 Android Runtime (ART) 更新。

Google Play 系统更新

凭据管理器和通行密钥

凭据管理器是新的 Jetpack API,它可通过单一 API 支持多种登录方法,如用户名和密码、通行密钥 (Passkey) 和联合登录解决方案 (如使用 Google 账号登录),从而帮助开发者简化集成过程。凭据管理器可以通过谷歌 Play 服务一直向下支持到 Android 4.4 (API 级别 19)。

Health Connect

Health Connect 是一个由用户控制的,用于存放用户健康和健身数据的设备端内容库,它让实现跨应用和跨设备的集成健康和健身体验变得前所未有的简单。Health Connect 是 Android 平台的一部分,通过 Google Play 系统更新进行升级,无需单独下载。在更早的设备上则以应用的形式提供,可通过谷歌 Play 商店下载。

▲ 图源 谷歌

更强大的系统 Sharesheet

Android 14 的系统 Sharesheet 可添加自定义动作,并改进了共享目标的排名机制,让您的应用可以轻松为用户提供丰富、一致的共享体验。

提高直接共享目标的排名

Google Play 服务也推出了新政策,以确保开发者合理使用这些 API。官方还新增了用户发起的数据传输作业类型,可以为 JobScheduler 设置约束条件,从而简化用户发起的大型上传和下载的管理(如设置网络约束条件,仅允许通过未计量的 Wi-Fi 进行下载)。

用户体验

预测性返回

继 Android 13 引入“返回主屏幕”动画后,Android 14 引入了新的跨 Activity 和跨任务的预测性(Predictive Back)系统动画。该系统动画目前仍可在开发者选项中手动启用,以便留出时间进行更多打磨,并让更多应用选择对预测性返回进行适配。Material 和 Jetpack 库目前已提供预测性返回动画供大家使用。

隐私和安全

▲ 图源 谷歌

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

在 Android 14(API 级别 34)中,当应用请求 Android 13(API 级别 33)中引入的任何视觉媒体权限(READ_MEDIA_IMAGES 或 READ_MEDIA_VIDEO)时,用户可以授予对其照片和视频的部分访问权限。我们建议您在应用中采用最新的最佳实践方案来适配此项变更。

后台启动 Activity

Android 10 (API 级别 29) 及以上版本对在后台运行的应用启动 Activity 的时机施加了限制。为进一步减少中断用户体验的情况,以 Android 14 为目标平台的应用在发送 PendingIntent 或绑定服务时,需要授予启动特权才能在后台启动 Activity。

阻止安装使用旧版 SDK 的应用

为防止恶意软件利用旧版 API 绕过最新的安全和隐私保护措施,从 Android 14 开始,targetSdkVersion 低于 23 的应用将无法安装。

运行时接收器

以 Android 14 为目标平台的应用必须说明动态 Context.registerReceiver () 的使用是否应被视为 "导出" 或 "未导出"。这是以前版本中清单级工作的延续,请访问官方文档了解详细信息:

安全的全屏 Intent 通知

由于全屏 Intent 通知是专为需要用户立即关注的极高优先级通知而设计的,因此 Android 14 将只允许提供通话和闹钟功能的应用在安装时获取该权限。您的应用可以启动设置页面让用户完成授权。

更安全的动态代码加载

以 Android 14 为目标平台的应用动态加载的文件需要标记为只读。请访问官方

更安全的隐式 Intent

以 Android 14 为目标平台的应用在使用隐式 Intent 创建可变的 PendingIntent 时将抛出一个异常,以防它们被用来触发意外的代码路径。

应用兼容性

在发布新的平台版本时,官方表示“会优先考虑应用的兼容性”,以“让更新过程更快、更顺畅”。

在 Android 14 中,大多数面向应用的变更依然是可选的,这样能为大家提供更多的时间进行调整和适配,直到开发者将应用的 targetSdkVersion 升级为 34。我们还更新了工具和流程,帮助大家更快地做好准备。

更轻松地针对变更进行测试和调试

为了让开发者更轻松地测试可能会影响应用的可选变更,官方今年依然为许多变更提供了开关选项。可以在“开发者选项”或 adb 中“单独强制启用或停用这些变更”。

▲ 开发者选项中的应用兼容性开关,图源 谷歌

官方声称,如果您是 SDK、开发库、工具和游戏引擎的开发者,现在发布必要的更新相当重要:

您的更新能让下游的应用和游戏开发者免遭兼容性问题困扰,并能及时引入最新的 SDK 功能特性。因此,请务必在发布了 Android 14 所必需的兼容性更新后,及时告知您的下游开发者们。

随着 Android 每个版本的发布,我们都会对平台进行整体的改进,以强化隐私和安全,并优化整个操作系统的用户体验,这些都可能会影响到您的应用。

参考

用户评论

你的眸中有星辰

终于来了!我一直期待着 Android 14 的新功能,特别是对大尺寸设备的支持,我的平板早就需要升级了。

    有18位网友表示赞同!

采姑娘的小蘑菇

看这个推送,感觉Android 14的系统流畅度提升了不少,应该能运行更复杂的游戏和应用。就等尝鲜版本出来试试效果啦!

    有18位网友表示赞同!

々爱被冰凝固ゝ

每次新版本的发布都好期待啊!希望这次源码开放能给开发者带来更多灵感,开发出更多优秀的应用。

    有20位网友表示赞同!

情字何解ヘ

官方说“关键内容”,不会是那些鸡肋的优化功能吧?还是希望能看到一些实质性的改进,比如更好的隐私保护和电池续航提升。

    有11位网友表示赞同!

我就是这样一个人

期待Android 14能解决部分手机升级困难的问题,特别是老款的中低端机型,希望能够体验到更好的系统体验。

    有6位网友表示赞同!

尘埃落定

这个“开发环节关键内容”什么概念?具体说说呗,官方总是喜欢这样模棱两可的宣传...

    有15位网友表示赞同!

暖瞳

看评论区有些人在吐槽官方神秘兮兮的介绍,但我感觉就是为了增加期待感,毕竟新版本总是自带热度啦!

    有9位网友表示赞同!

哽咽

每次ANDROID新版本发布都要等很久才能体会真正效果呢,这波源码推送就等看开发者的解读了,他们更了解系统的变化...

    有18位网友表示赞同!

巷陌繁花丶

我觉得Android 14的更新比较稳健性更高,因为官方已经做了很多关键优化调整。对老用户的体验来说,升级意义很大。

    有5位网友表示赞同!

稳妥

终于可以开始研究新的源码了!这个版本对一些特定行业的应用支持应该是会加强的,期待能找到灵感开发新产品。

    有19位网友表示赞同!

心脏偷懒

Android 14的安全性是重点提升方向吧?希望这次能够真正提升用户数据的保护力度,让人安心使用智能手机。

    有6位网友表示赞同!

陌上蔷薇

源码推送到AOSP,意味着开发者可以开始提前体验、适配新款手机的功能了,这对于我这种喜欢尝鲜的用户来说太棒了!

    有7位网友表示赞同!

千城暮雪

其实我觉得每次新版本发布都会有一定的“鸡肋”功能,这次可能也是一样。还是期待真正能提升用户体验的改变吧。

    有12位网友表示赞同!

青衫故人

Android已经很成熟了,希望新版本能够更加注重细节的优化,比如电池续航优化、应用启动速度等等实际意义更大的功能。

    有12位网友表示赞同!

眷恋

这个官方介绍也太含糊啦!什么“开发环节关键内容”,能不能具体点啊?让我们看看哪些实用性的改进。

    有15位网友表示赞同!

玻璃渣子

看了一下源码文档,感觉Android 14确实有很多重要的改进,特别是对大尺寸设备的支持和隐私保护方面的增强。很期待这次升级能给我带来更好的体验。

    有7位网友表示赞同!

热点资讯