平台稳定性里程碑 | Android 12 Beta 4 现已发布
作者 / Dave Burke, VP of Engineering
Material You https://material.io/blog/announcing-material-you
对于开发者来说,Beta 4 让我们抵达了平台稳定性里程碑,这意味着 Android 12 的 API 和所有面向应用的行为都已最终确定。对于应用来说,现在的重点是解决兼容性和完善质量。现在是时候立即着手为您的应用准备兼容性更新,为今年晚些时候的正式发布做好准备了。
平台稳定性里程碑 https://developer.android.google.cn/about/versions/12/overview#platform_stability
今天您就可以在 Pixel 设备上通过 OTA 更新开始体验 Android 12 Beta 4,如果您之前已经加入了 Beta 测试,则会自动获得更新。您还可以在我们的设备制造商合作伙伴 (如华硕、一加、OPPO、realme、夏普和中兴) 的若干指定设备上体验 Android 12 Beta 4,具体请查看:
https://developer.android.google.cn/about/versions/12/devices
开始体验 Android 12 Beta https://www.google.com/android/beta
有关 Android 12 的详细信息以及如何开始开发,请访问 Android 12 开发者网站:
https://developer.android.google.cn/about/versions/12
平台稳定性里程碑
Android 12 Beta 4 已经全面抵达平台稳定性里程碑,这意味着 Android 12 中所有面向应用的接口和行为都已最终确定。这不仅包括官方 SDK 和 NDK API,还包括可能会影响应用的系统行为和非 SDK 接口限制都已确定。因此从 Beta 4 开始,您可以放心地发布应用的兼容性更新,因为平台不会再有变更。发布时间表详见:
https://developer.android.google.cn/preview/overview#timeline
平台稳定性里程碑 https://developer.android.google.cn/about/versions/12/overview#platform_stability
我们要求所有的应用和游戏开发者现在就开始进行最终兼容性测试,在 Android 12 正式发布之前尽快准备好发布应用和游戏的兼容性更新。
对于所有 SDK、开发库、工具和游戏引擎的开发者来说,立即开始测试并尽快发布兼容性更新更为重要: 在获得来自您的更新之前,您的下游应用和游戏开发者的工作可能会受阻,因此请务必在发布了兼容更新后告知您的下游开发者们!
应用兼容性
对于 Android 来说,应用兼容性意味着您的应用能在新版本的平台上按照预期运行。您只需在设备或模拟器上安装应用的正式版本,即可进行兼容性测试: 如果应用各方面表现正常,那么它就是兼容的。
测试应用的兼容性十分重要。在每个系统版本中,我们都会对平台进行整体的改进,强化隐私和安全性,并优化整个操作系统的用户体验。这些都可能会影响您的应用,所以请务必查看行为变更清单并进行针对性的测试,然后向用户发布兼容性更新。兼容性测试是确保应用品质的基础但十分核心的环节,可以确保您的用户拥有良好的应用体验。
行为变更: 所有应用 https://developer.android.google.cn/about/versions/12/behavior-changes-all
当用户将自己的设备更新到 Android 12 后,他们会希望探索最新版本的 Android 系统,并在这个新平台上体验自己最喜欢的应用。应用不能正常工作会是非常严重的问题,甚至会导致用户卸载您的应用。
因此,虽然 Android 12 有大量的新 API 和功能值得探索,但请首先测试您目前的应用,并发布兼容性更新。
功能和 API 概览 https://developer.android.google.cn/preview/features
让您的应用做好准备
要测试应用在 Android 12 上的兼容性,只需在运行 Android 12 Beta 4 的设备上,通过 Google Play 或其他渠道安装您的正式版应用即可。请测试应用的所有流程,找出功能或 UI 上暴露的问题。请通过行为变更清单 (针对所有应用) 来找出可能影响应用的潜在变更,从而确定测试重点:
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 应用启动画面 - Android 12 在启动应用时会使用全新的启动动画。请访问官方文档了解详细信息: 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
前台服务启动限制 - 应用不再可以从后台启动前台服务。对于高优先级的后台任务,请使用 WorkManager 中的加急作业 (expedited jobs) 来代替。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/foreground-services
WorkManager https://developer.android.google.cn/topic/libraries/architecture/workmanager 加急作业 https://developer.android.google.cn/about/versions/12/foreground-services#expedited-jobs
粗略位置 - 当应用请求确切位置的许可时,用户现在可以选择授予精确或粗略位置。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/behavior-changes-12#approximate-location
新的精确闹钟权限 - 想要使用精确闹钟的应用必须申请一个新的普通权限: SCHEDULE_EXACT_ALARM。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/behavior-changes-12#exact-alarm-permission
SCHEDULE_EXACT_ALARM
https://developer.android.google.cn/reference/android/Manifest.permission#SCHEDULE_EXACT_ALARM
WebView 中的现代 SameSite Cookie 行为 - 如果您的应用使用 WebView,请针对新的 SameSite Cookie 行为进行测试。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/behavior-changes-12#samesite 更安全的组件导出 - 您的应用必须为任何使用 intent 过滤器的应用组件显式声明 android:exported 属性。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/behavior-changes-12#exported 自定义通知 - 系统会为完全自定义的通知采用标准通知模板,并提供应用名称、应用图标和展开/折叠内容的字段支持。请访问官方文档了解详细信息: http://developer.android.google.cn/about/versions/12/behavior-changes-12#custom-notifications 通知 trampoline 限制 - 通知不再能通过 trampoline (用于启动目标 Activity 的中间广播接收器或服务) 来启动您的应用。请访问官方文档了解详细信息: https://developer.android.google.cn/about/versions/12/behavior-changes-12#notification-trampolines
https://developer.android.google.cn/preview/non-sdk-12
即刻开始体验 Android 12
不论您是想体验 Android 12 的功能、测试应用还是提交反馈,都可以从这次的 Beta 版开始。只需使用受支持的 Pixel 设备注册参加测试,即可通过无线 (OTA) 方式获得更新。要开始进行开发,请先安装并设置 Android 12 SDK。
分享使用反馈 https://developer.android.google.cn/about/versions/12/feedback 参加 Beta 版测试 https://www.google.com/android/beta 设置 Android 12 SDK https://developer.android.google.cn/about/versions/12/setup-sdk
您也可以在参与 Android 12 开发者预览计划的顶级设备制造商合作伙伴 (如华硕、一加、OPPO、realme、夏普和中兴) 的设备上体验 Android 12 Beta 4。请访问 developer.android.google.cn/about/versions/12/devices 查看合作伙伴的完整列表。为了在更多设备上进行更广泛的测试,您也可以通过 Android GSI 映像来安装和体验 Android 12 Beta 4。如果您没有合适的设备,也可以在 Android 模拟器上进行测试。
Android 12 GSI 映像 https://developer.android.google.cn/about/versions/12/gsi-release-notes Android 模拟器 https://developer.android.google.cn/about/versions/12/get#on_emulator
Beta 4 也适用于 Android TV,您可以查看最新的功能,测试自己的应用,并尝试全新的 Google TV 体验。请前往 Android TV 开发者网站了解更多信息并使用 ADT-3 开发者工具包上手开发:
https://developer.android.google.cn/tv
在未来数周我们还将发布一个 Beta 版本作为发布候选版,以供大家进行最终的测试。
请访问 Android 12 开发者网站了解 Beta 版的详细信息:
https://developer.android.google.cn/12
推荐阅读