欢迎体验 | Android 13 开发者预览版 2
The following article is from Android 开发者 Author Android
作者 / Dave Burke, VP of Engineering
在今天的发布之前,Android 12L 功能更新已经于上周发布至 Android 开源项目 (AOSP) 中,这些功能更新会帮助大家充分利用超过 2.5 亿台的大屏幕 Android 设备。为了帮助大家深入了解 Android 13、平板电脑,以及我们在 Jetpack Compose 中提供的开发者生产力功能,我们准备了新一期的 #TheAndroidShow 节目,☟欢迎大家观看☟
Android 12L 功能更新,现已加入 AOSP
在开始介绍本次的开发者预览版之前,让我们先回顾一下上周的新闻: 我们已经正式将 Android 12L 功能更新发布至 AOSP,并会在未来几周内推送至所有支持的 Pixel 设备。Android 12L 优化了 Android 12 在平板电脑上的体验,其中包括一些更新,比如用户可以在新的任务栏中通过拖放让应用进入分屏模式,通知栏和锁屏中新的大屏幕布局,以及改进的应用兼容模式。您可以阅读发布博文了解更多信息:
https://blog.google/products/android/12l-larger-screens/
从今年晚些时候开始,Android 12L 将在三星、联想和微软的平板电脑和可折叠设备上按计划更新,现在是时候让您的应用做好准备了。我们强烈建议大家在分屏模式下用不同大小的窗口测试应用,以及针对不同的屏幕方向进行测试,并检查新的兼容模式的变化 (如果适用的话)。请访问官方文档了解更多关于 Android 12L 的开发信息:
最重要的是: Android 12L 的大屏幕功能也是 Android 13 的基础之一,所以您可以在 Android 13 上进行开发和测试,因为 Android 13 覆盖了运行 Android 12L 的平板电脑受众。我们将大屏幕视为 Android 未来的关键方向之一,我们将继续投入资源,为您提供更多相关工具,帮助您为平板电脑、Chromebook 和可折叠设备构建良好体验。您可以通过官方文档了解更多关于如何开始为大屏幕进行优化的信息,并查阅我们的大屏幕开发者资源。
大屏幕使用入门 https://developer.android.google.cn/guide/topics/large-screens/get-started-with-large-screens 适用于大屏幕设备开发则响应式布局 https://developer.android.google.cn/large-screens
下面让我们深入了解今天的 Android 13 开发者预览版 2 中的新内容。
隐私和用户信任
人们希望使用值得信赖的操作系统和应用,来处理他们最私密、最敏感的信息以及设备上的资源。隐私和用户信任是 Android 产品原则的核心。在 Android 13 中,我们将继续专注于在设备上提供更安全的环境,以及为用户提供更多的控制权,从而为所有人打造一个负责任、高质量的平台。以下是开发者预览版 2 中的新增内容。
通知权限 - 为了帮助用户专注于对他们最重要的通知,Android 13 为从应用发送通知引入了一个新的运行时权限: POST_NOTIFICATIONS。以 Android 13 为目标平台的应用现在需要在发送通知前向用户申请通知权限。以 Android 12 或更低版本为目标平台的应用,系统将代您处理升级流程。我们也会持续优化这个流程。为了给您的用户提供更多的背景信息和控制权限,我们鼓励您尽早将目标平台设为 Android 13,并在您的应用中申请通知权限。请访问官方文档了解详细信息:
运行时权限 https://developer.android.google.cn/guide/topics/permissions/overview#runtime POST_NOTIFICATIONS https://developer.android.google.cn/reference/android/Manifest.permission#POST_NOTIFICATIONS
revokeOwnPermissionsOnKill https://developer.android.google.cn/reference/android/content/Context.html#revokeOwnPermissionsOnKill(java.util.Collection%3Cjava.lang.String%3E)
更安全地导出上下文注册的接收器 - 在 Android 12 中,我们要求开发者针对应用清单中声明的 Intent 接收器来声明其可导出性。在 Android 13 中,我们要求您也为上下文注册的接收器做同样的事情: 在为非系统来源注册接收器时,为其添加 RECEIVER_EXPORTED 或 RECEIVER_NOT_EXPORTED 标志。这将有助于确保接收者不会被其他应用发送广播,除非其有意为之。虽然在 Android 13 中对此没有强制要求,但我们建议您声明可导出性,迈出保护您的应用的第一步。
RECEIVER_EXPORTED
https://developer.android.google.cn/reference/android/content/Context.html#RECEIVER_EXPORTEDRECEIVER_NOT_EXPORTED
https://developer.android.google.cn/reference/android/content/Context.html#RECEIVER_NOT_EXPORTED
开发者生产力
在 Android 13 中,我们正在努力为您提供更多的工具,帮助您为用户提供更精致的体验和更好的性能。以下是今天的开发者预览版中的一些更新。
日语文本折行改进 - TextView 现在可以按词句 (文節/Bunsetsu,听起来觉得自然的最小语义单位) 或短语来折行文本,而不是按字符折行。这会让日语应用有更佳的阅读体验。您可以通过在 TextView 中使用 android:lineBreakWordStyle="phrase" 来启用这种折行:
https://developer.android.google.cn/reference/android/R.attr.html#lineBreakWordStyle
改进了非拉丁文字的行高 - Android 13 使用适合每种语言的行高,改进了非拉丁文字 (如泰米尔语、缅甸语、泰卢固语和藏语) 的显示效果。新的行高可以防止出现剪切,并改善字符的定位。您的应用只需将目标平台设为 Android 13,即可获得这些改进。请大家务必在使用新的行距时测试您的应用,因为变化可能会影响非拉丁语系的用户界面。
△ 以 Android 13 为目标平台的应用中的非拉丁文字行高改进效果 (下)
文本转换 API - 日语和汉语等语言的用户会使用拼音输入法,这往往会拖慢搜索和自动补全等功能。在 Android 13 中,应用可以调用新的文本转换 API,让用户可以更快更容易地找到需要的内容。例如,以前的搜索需要日语用户 (1) 输入平假名来表示搜索词的发音,可能是一个地名或一个应用名 (2) 使用键盘将平假名字符转换为汉字 (3) 使用汉字字符重新搜索 (4) 获得搜索结果。在新的文本转换 API 的帮助下,日语用户只需输入平假名,就可以立即看到日文汉字的搜索结果,相当于跳过了第 2 和第 3 步。
文本转换 API
https://developer.android.google.cn/reference/android/view/inputmethod/TextAttribute
彩色矢量字体 - Android 13 增加了对 COLR 版本 1 (请参考详细规格和介绍视频) 字体的渲染支持,并将系统表情符号更新为 COLRv1 格式。COLRv1 是一种新的、高度紧凑的字体格式,在任何尺寸下都能快速清晰地渲染。对于大多数应用,这项修改完全无法被感知到,系统会自动处理好一切。从开发者预览版 2 开始,您可以选择在应用中使用 COLRv1。如果您的应用是自己实现文本渲染,并使用系统字体,我们建议您使用 COLRv1 并测试表情符号的渲染效果。您可以在 Chrome 发布公告中了解更多关于 COLRv1 的信息:
https://developer.chrome.com/blog/colrv1-fonts/
COLR 规格
https://docs.microsoft.com/en-us/typography/opentype/spec/colr
COLR 介绍视频 https://www.youtube.com/watch?v=BmqYm5Wwz8M
△ COLRv1 矢量表情符号 (左) 和位图表情符号
蓝牙低功耗 (LE) 音频 - 低功耗 (Low Energy, LE) 音频是下一代的无线音频,用于取代经典蓝牙,并实现新的用例和连接拓扑结构。用户可以通过它与朋友和家人分享和广播自己的音频,或订阅公共广播以获得信息、娱乐或无障碍辅助信息。它旨在确保用户能够在不牺牲电池寿命的情况下接收高保真音频,并在不同用例之间无缝切换,这是经典蓝牙无法做到的。Android 13 增加了对低功耗音频的内置支持,因此开发者们无需做任何操作即可在兼容的设备上获得这个新功能。
MIDI 2.0 - Android 13 增加了对新的 MIDI 2.0 标准的支持,包括通过 USB 连接 MIDI 2.0 硬件的能力。这个更新的标准提供了一些新功能,如更高的控制器分辨率,更好地支持非西方音调,以及通过单一音符控制器提供更佳的表现力。
应用兼容性
在发布新的平台版本时,我们优先考虑应用的兼容性,让系统更新的体验更快、更顺畅。在 Android 13 中,面向应用的变更都是可选的,以便您有更多的时间进行调整和适配,我们还更新了工具和流程,帮助您更快地做好准备。
随着开发者预览版 2 的到来,我们得以在 Android 13 的发布历程中更进一步,并继续改善整体的稳定性,现在是时候尝试新功能和变更,并向我们提交反馈了。我们特别希望得到关于 API 的反馈意见,以及平台变更对您的应用造成影响的详细信息。欢迎大家前往反馈页面,与我们分享您的想法或报告问题。
平台变更
https://developer.android.google.cn/about/versions/13/behavior-changes-all反馈页面
https://developer.android.google.cn/about/versions/13/feedback
现在您也可以开始进行兼容性测试,并确定接下来需要完成的工作。我们建议大家尽早安排这些工作,以便在 Android 13 Beta 1 推出时发布与之兼容的更新。目前暂时不需要更改应用的 targetSdkVersion,但我们建议使用开发者选项中的行为变更开关来初步了解 Android 13 中的可选变更对应用造成的影响。
将应用迁移到 Android 13
https://developer.android.google.cn/about/versions/13/migration
兼容性框架变更 (Android 13)
https://developer.android.google.cn/about/versions/13/reference/compat-framework-changes
https://developer.android.google.cn/about/versions/13/overview
平台稳定性里程碑
https://developer.android.google.cn/about/versions/13/overview#platform_stability
△ 开发者选项中的应用兼容性开关
即刻开始体验 Android 13
不论您是想体验 Android 13 的功能、测试应用还是提交反馈,都可以从这次的开发者预览版开始。只需将系统映像下载并刷入 Pixel 6 Pro / 6 / 5a 5G / 5 / 4a (5G) / 4a / 4 XL / 4 设备,即可立即开始使用。如果您没有 Pixel 设备,则可以在 Android Studio Dolphin 中使用带有 64 位系统映像的 Android 模拟器。如果想进行更广泛的测试,我们也提供了 GSI 映像。如果您已经在 Pixel 设备上安装了上一个预览版,则会通过 OTA 方式自动获得更新,包括之后的预览版和 Beta 版。请访问官方文档了解详细信息:
反馈与需求 https://developer.android.google.cn/about/versions/13/feedback 获取系统映像 https://developer.android.google.cn/about/versions/13/download
了解本次发布的完整信息,请访问 Android 13 开发者网站:
https://developer.android.google.cn/about/versions/13
推荐阅读