Android 12 正式发布 | 开发者们的全新舞台
作者 / Dave Burke, VP of Engineering
10 月 4 日,我们已经将源代码推送至 Android 开源项目 (AOSP),并正式发布最新版本的 Android。Android 12 会在接下来的几周内推送至 Pixel 设备,并在今年晚些时候覆盖三星 Galaxy、一加、OPPO、realme、TECNO、Vivo 和小米设备。
Android 开源项目 https://source.android.google.cn/
再次感谢大家在 Android 12 Beta 版期间分享的反馈!有超过 22.5 万人在 Pixel 以及合作厂商的设备上测试了 Android 12 的早期版本,并向我们提交了近 5 万条问题报告,以帮助提高版本的质量。我们也很感谢大家在许多文章、讨论、调研和面谈中给出的宝贵想法,以及确保自己的应用及时获得兼容性更新所做的工作。大家的支持和贡献使 Android 得以成为适合所有人的了不起的系统平台。
我们也将在今年 10 月 27 日至 28 日召开的 Android Dev Summit 上分享更多 Android 12 的详细信息。关于本次峰会,我们也带来了包括 Android 技术演讲概览在内的更多信息,请继续阅读本文了解详情。
Android Dev Summit https://developer.android.google.cn/events/dev-summit
Android 12 为开发者带来了什么?
这里针对开发者们列出一些不容错过的 Android 12 新特性。请务必前往 Android 12 开发者网站查看所有新功能的详细信息:
https://developer.android.google.cn/12
Android 的新 UI
Material You
https://material.io/blog/announcing-material-youMaterial 设计组件
https://github.com/material-components/material-components-android/releases
重新设计的微件 (widget) - 我们重新设计了应用微件,让它们更实用、更美观,且更易于发现。您可以体验新的交互控件、适用于任何设备的响应式布局,以及动态颜色,来创建充满个性同时依然拥有高度一致性的外观。请访问官方文档了解详细信息:
https://developer.android.google.cn/about/versions/12/features/widgets
http://developer.android.google.cn/about/versions/12/behavior-changes-12#custom-notifications
https://developer.android.google.cn/about/versions/12/overscroll
https://developer.android.google.cn/about/versions/12/features/splash-screen
性能表现
更快、更高效的系统性能 - 我们将核心系统服务所需的 CPU 时间减少了 22%,并将对大核的使用减少了 15%。我们还改善了应用的启动时间,并优化了 I/O 以加快应用的加载速度;对于数据库查询,在使用 CursorWindow 处理大量数据的时候,我们将其性能提高了 49 倍之多。
加急作业
https://developer.android.google.cn/reference/android/app/job/JobParameters.html#isExpeditedJob()
隐私
更好的用户体验工具
RenderEffect
https://developer.android.google.cn/reference/android/graphics/RenderEffectRenderNode
https://developer.android.google.cn/reference/android/graphics/RenderNodeWindow.setBackgroundBlurRadius()
https://developer.android.google.cn/reference/android/view/Window#setBackgroundBlurRadius(int)blurBehindRadius
https://developer.android.google.cn/reference/android/view/WindowManager.LayoutParams#blurBehindRadius
设备厂商扩展
https://developer.android.google.cn/reference/android/hardware/camera2/CameraExtensionCharacteristics
App Exit Reasons API
https://developer.android.google.cn/reference/kotlin/android/app/ActivityManager#gethistoricalprocessexitreasons崩溃转储和 Tombstone
https://source.android.google.cn/devices/tech/debug#debuggerd
游戏模式 (Game Mode)
https://developer.android.google.cn/games/gamemode边玩边下 (play as you download)
https://developer.android.google.cn/games/distribute/play-as-you-download
让您的应用为 Android 12 做好准备
随着 Android 12 的正式发布,我们要求所有的 Android 开发者完成兼容性测试并尽快发布更新,以便用户顺利过渡到 Android 12。
要测试应用的兼容性,只需在运行 Android 12 的设备上安装应用,并测试应用的所有流程,找出功能或 UI 上暴露的问题。请通过 Android 12 行为变更清单 (针对所有应用) 来找出可能影响应用的变更。
获取 Android 12
https://developer.android.google.cn/about/versions/12/get行为变更 (所有应用)
https://developer.android.google.cn/preview/behavior-changes-all
隐私信息中心 - 通过系统设置 (Settings) 中新增的这个信息中心来查看应用对麦克风、位置信息和其他敏感数据的访问,您也可考虑向用户提供访问原因的详细信息。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/features#privacy-dashboard 麦克风和摄像头指示标志 - 当应用正在使用摄像头或麦克风时,Android 12 会在状态栏显示指示标志。请确保该标志不会影响应用的用户界面。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/behavior-changes-all#mic-camera-indicators 麦克风和摄像头切换开关 - 使用快捷设置 (Quick Settings) 中新增的切换开关来禁止应用对麦克风和摄像头的访问,请确保您的应用能正确处理这一变化。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/behavior-changes-all#mic-camera-toggles 剪贴板访问通知 - 当应用从剪贴板中读取数据时,请注意出现的消息框消息。请避免出现意外访问的情形。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/behavior-changes-all#clipboard-access-notifications 过度滚动拉伸效果 - 请通过您的滚动内容来体验新的 "拉伸" 过度滚动效果,并确保内容如预期显示。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/overscroll 应用启动画面 - 通过各种流程启动您的应用,以测试新的启动动画。如果有必要,您可以对其进行自定义。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/features/splash-screen Keygen 变更 - 我们移除了一些被废弃的 BouncyCastle 加密算法,转而使用 Conscrypt 实现。如果您的应用使用 512 位的 AES 密钥,您需要将其改为 Conscrypt 支持的标准长度。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/behavior-changes-all#bouncy-castle
别忘了测试应用中的开发库和 SDK 的兼容性。如果您发现 SDK 的问题,请尝试更新 SDK 到最新版本,或向其开发者寻求帮助。
一旦您发布了当前应用的兼容版本,就可以开始着手升级应用的 targetSdkVersion。请查阅行为变更清单 (针对面向 Android 12 的应用),并使用兼容性框架工具来快速检测问题。
更新应用的目标平台并使用新 API 进行构建 https://developer.android.google.cn/preview/migration#setup_sdk 符合 Google Play 的目标 API 级别要求 https://developer.android.google.cn/distribute/best-practices/develop/target-sdk 行为变更: 以 Android 12 为目标平台的应用 https://developer.android.google.cn/about/versions/12/behavior-changes-12 兼容性框架工具 https://developer.android.google.cn/preview/test-changes
相聚 Android Dev Summit 2021,尽览 Android 12 等众多精彩!
Android Dev Summit 官方网站 https://developer.android.google.cn/events/dev-summit #AskAndroid https://twitter.com/search?q=%23AskAndroid&src=typed_query
推荐阅读