Android Q Beta 4 来啦!公开 API 也已定稿!
上个月在 Google I/O 上
我们在 Android Q 上聚焦三个主题: 创新、隐私与安全,以及数字健康。我们希望帮助开发者利用 5G、折叠屏、全面屏、设备端机器学习等最新技术,同时确保用户安全、隐私以及健康是您开发过程中的首要考虑因素。
我们也谈到了我们将如何持续强化 Kotlin 首选开发语言的地位,以及持续扩展 Jetpack,如添加 CameraX、Jetpack Security 和 Jetpack Compose (一个基于 Kotlin 的现代响应式风格的 Android 界面工具包) 这样的库。如果您错过了主题演讲或者分会场演讲的直播,请移步至完整的 Android 和 Google Play 演讲视频列表进行观看。
使用 Kotlin 开发 Android 应用
https://developer.android.google.cn/kotlin/
CameraX
https://developer.android.google.cn/training/camerax
Jetpack Security
https://developer.android.google.cn/topic/security/data
Jetpack Compose
https://android.googlesource.com/platform/frameworks/support/+/refs/heads/androidx-master-dev/ui/README.md
Android 和 Google Play 演讲视频列表
https://www.youtube.com/watch?v=Hzv5-R9XLTc
上周,我们正式发布了 Beta 4 版本以及 Android Q 的定稿 API 和官方 SDK。现在就让您的应用为在今年夏末的正式版发布做好准备吧!
您即刻就可以参加 Beta 测试计划,在 Pixel 设备上获取 Beta 4。如果您已经参加了 Beta 测试计划并且已经在您的 Pixel 设备上运行 Beta 3 的话,它将会自动更新到 Beta 4。加入了 Android Q Beta 项目的 Google 合作伙伴们也会在接下来的数周内将他们的设备更新到 Beta 4。
Beta 测试计划
https://www.google.com/android/beta
Android Q 测试版设备
https://developer.android.google.cn/preview/devices
如果您想开始为 Android Q Beta 开发应用,请移步 developer.android.google.cn/preview/。
Beta 4 包含什么?
Beta 4 更新里包含供 Pixel 及模拟器使用的最新 Android Q 系统映像,Android Q 定稿版开发者 API (API 等级 29),官方的 API 29 SDK,以及升级版的 Android Studio 构建工具。这些更新内容确保您能针对 Android Q 测试应用兼容性,以及针对 Android Q 的功能和 API 进行开发构建。
想立刻着手开发很容易,只需将官方 API 29 SDK 和工具下载至 Android Studio 3.4 稳定版,或更新至 Android Studio 3.5 beta 版以获得 Android Q 支持。然后按照设置说明配置开发环境,另外也请阅读发布说明里的已知问题列表。
Android Studio 3.4 稳定版
https://developer.android.google.cn/studio/
Android Studio 3.5 beta 版
https://developer.android.google.cn/studio/preview
配置开发环境
https://developer.android.google.cn/preview/setup-sdk
发布说明
https://developer.android.google.cn/preview/release-notes
将您的应用适配至 Android Q!
如今开发者 API 已经定稿,系统的发布候选版也即将到来,所有开发者请务必开始测试自己的应用在 Android Q 上的兼容性,而且我们建议尽早开展这项工作。
Android Q 发布日程表
https://developer.android.google.cn/preview/overview#timeline
请将您的应用从应用商店下载至运行 Android Q Beta 的真机或模拟器,然后进行测试。在测试主要的工作流程时,您的应用应该表现良好,且能够正确处理 Android Q 带来的行为变更。请注意由隐私保护变动事项、手势导航、生物验证库的动态链接路径变化等带来的影响。
Android Q 测试版设备
https://developer.android.google.cn/preview/devices
创建和管理虚拟设备
https://developer.android.google.cn/studio/run/managing-avds.html
Android Q 行为变更
https://developer.android.google.cn/preview/behavior-changes-all
Android Q 中的隐私权
https://developer.android.google.cn/preview/privacy
手势导航
https://developer.android.google.cn/preview/features/gesturalnav
生物验证库的动态链接路径变化
https://developer.android.google.cn/preview/behavior-changes-all#bionic
请务必针对 Android Q 的隐私保护新特性进行测试,其包括新的位置权限请求、限制应用从后台启动、关于数据和设备识别符方面的变更,以及其他核心隐私保护功能。请查看隐私特性检查清单并逐一测试。另外也请查看行为变化文档,以确定更多的测试项目。
位置权限请求
https://developer.android.google.cn/preview/privacy/device-location
限制应用从后台启动
https://developer.android.google.cn/preview/privacy/background-activity-starts
限制应用访问不可重置的设备识别号
https://developer.android.google.cn/preview/privacy/data-identifiers
Android Q 隐私特性检查清单
https://developer.android.google.cn/preview/privacy/checklist
△ 使用最新的 Android 模拟器来测试您应用的兼容性
如果您打算将您的目标平台版本升级至 API 29,请确保测试分区存储、无线连接所需的位置权限,以及全屏 intent 权限。您可以在 “Android Q 行为变更” 文档中了解会影响应用的其他变更项目。
分区存储
https://developer.android.google.cn/preview/privacy/scoped-storage
无线连接所需的位置权限
https://developer.android.google.cn/preview/privacy/camera-connectivity#fine-location-telephony-wifi-bt
全屏 intent 权限
https://developer.android.google.cn/preview/behavior-changes-q#full-screen-intents
Android Q 行为变更
https://developer.android.google.cn/preview/behavior-changes-q
另外一个很重要的工作是测试应用在使用的受限制的非 SDK 接口,并切换到公开 SDK 或 NDK 的替代接口。请注意查看 logcat 中对非 SDK 接口调用的警告信息,并使用 StrictMode 的 detectNonSdkApiUsage() 方法在运行时捕获这些调用。
detectNonSdkApiUsage()
https://developer.android.google.cn/reference/android/os/StrictMode.VmPolicy.Builder#detectNonSdkApiUsage()
最后,请全面测试在您的应用中使用到的开发库和 SDK,确保它们在 Android Q 中工作正常,且遵循隐私、性能、用户体验、数据处理以及权限操作的最佳实践。如果您发现了异常,请试着更新到最新版本的 SDK,或者联系 SDK 的开发者以寻求帮助。您也可以使用下面的链接汇报 SDK 的兼容性问题,或
汇报 SDK 兼容性问题
https://issuetracker.google.com/issues/new?component=190602&template=1227583
在测试完应用并做出必要的更新后,我们建议您立刻发布已完成适配。这样 Android Beta 的用户们就能测试它,并且在用户们更新到 Android Q 的过程中帮您做到平滑过渡。
使用测试渠道从用户那里获取有价值的早期反馈
https://developer.android.google.cn/distribute/best-practices/launch/test-tracks
做出上述更新意味着您需要进行研发投入,我们非常理解这一点,所以我们也在努力减小对您应用的影响,并在接下来几个月发布最终版本的过程中继续倾听您的反馈并做出响应。
提交您的反馈
https://issuetracker.google.com/issues/new?component=190602&template=1245332
用 Android Q 新特性和 API 提升您的应用
在您准备好之后,请深入了解 Android Q,了解那些可以在您的应用中使用的特性和 API。Android Q 的新特性能帮助您吸引用户,为他们提供更多的控制权与隐私保护,甚至能提升应用的性能表现。
△ Android Q 提供了系统智能回复建议,以及通知内建议操作
比如,您可以通过针对折叠屏进行优化,从而为用户提供无缝切换的边到边屏幕体验,还可以在应用中加入手势导航。您也可以使用夜间模式、通知内的智能回复及建议操作、分享快捷方式以及快捷设置面板等特性来吸引用户。
为折叠屏打造应用
https://developer.android.google.cn/preview/features/foldables
手势导航
https://developer.android.google.cn/preview/features/gesturalnav
夜间模式
https://developer.android.google.cn/preview/features/darktheme
通知内的智能回复及建议操作
https://developer.android.google.cn/preview/features#smart-suggestions
分享方面的改进
https://developer.android.google.cn/preview/features/sharing
快捷设置面板
https://developer.android.google.cn/preview/features#settings-panels
△ 手势导航能为您的应用带来边到边的操作和视觉体验
如果您的应用使用 Wi-Fi 管理物联网设备,请尝试新的网络连接 API (Network Connnection API) 来使用配置、下载或者打印功能。如果您的应用能管理 Wi-Fi 网络连接,请尝试使用网络建议 API (Network Suggestion API) 向用户显示偏好的 Wi-Fi 网络并发起网络连接,而无需请求位置权限。
网络连接与网络建议 API
https://developer.android.google.cn/preview/features#peer2peer
如果您的应用使用了摄像头,请了解一下动态深度格式。对于媒体处理类的应用,您可以使用视频编码格式 AV1 进行视频串流,以及 HDR10+ 来提供高动态范围视频。针对语音和音乐串流,您可以使用 Opus 编码。我们还为音乐创作者们提供了原生 MIDI API。
动态深度格式
https://developer.android.google.cn/preview/features#dynamic-depth
AV1
https://en.wikipedia.org/wiki/AV1
HDR10+
https://en.wikipedia.org/wiki/High-dynamic-range_video#HDR10+
Opus
http://opus-codec.org/
原生 MIDI API
https://developer.android.google.cn/preview/features/midi
△ 动态深度 (Dynamic Depth) 可以帮助您在应用中实现模糊或散景效果
如果想要支持字幕生成和游戏回放录制的话,请打开音频回放捕获功能——这是一个让您的应用触达更多用户的好方法。如果您的应用会剧烈消耗电能,请使用全新的热感 API (Thermal API) 来根据设备的温度对应用的性能进行优化。
捕获播放的音频
https://developer.android.google.cn/preview/features/playback-capture
热感 API
https://developer.android.google.cn/preview/features#thermal
在现代设备上进行指纹识别时,现在更推荐使用 BiometricPrompt,所有使用指纹识别或者其他生物验证方式的开发者都应该尽快转而使用这个 API。 为了让切换过程更加顺利,请使用我们在 AndroidX 库中提供的向后兼容的 BiometricPrompt API。Android Q 支持显式和隐式 (人脸识别等变动识别方法时无需用户提供明确确认) 的身份验证流。
BiometricPrompt
https://developer.android.google.cn/reference/android/hardware/biometrics/package-summary
AndroidX 库中的 BiometricPrompt
https://developer.android.google.cn/reference/androidx/biometric/BiometricPrompt
这些只是 Android Q 中新特性和 API 中的一小部分。请移步 Android Q Beta 开发网站了解完整清单。
Android Q Beta 开发网站
https://developer.android.google.cn/preview/index.html
在应用商店上发布应用更新
随着 Android Q Beta 4 的发布,Google Play 也正式开始接受针对 (或可选性地针对) API 29 进行编译的应用。这使得您可以通过 Google Play 将应用更新推送给用户,并在用户的设备上测试应用的兼容性,包括那些运行 Android Q Beta 4 的设备。
如何获取 Beta 4?
获取步骤很简单!Pixel 用户请加入 Beta 测试计划并获取更新。如果您已加入,无需任何行动,设备将很快收到更新推送。此外,系统映像文件也已开放下载。Android Q Beta 测试计划中 Google 合作伙伴们也会在接下来数周内更新他们的设备。请访问 android.com/beta 查看全部支持机型。
Beta 测试计划
https://www.google.com/android/beta
下载系统映像
https://developer.android.google.cn/preview/download
为了能在支持的设备上进行更多测试,您可下载 Android GSI 通用系统映像。如果暂时没有合适的设备,您也可以使用模拟器进行测试。
Android GSI 通用系统映像
https://developer.android.google.cn/preview/gsi-release-notes
您的反馈意见对我们非常重要,所以请继续向我们反馈产品的想法和建议。您可以通过热点清单向我们反馈平台问题 (包括隐私和行为变更问题)、应用兼容性问题和第三方 SDK 问题,也欢迎在下方评论区留言或
向我们反馈产品的想法和建议
https://developer.android.google.cn/preview/feedback.html
反馈平台问题
https://issuetracker.google.com/issues/new?component=190602&template=1226573
反馈应用兼容性问题
https://issuetracker.google.com/issues/new?component=190602&template=1227376
反馈第三方 SDK 问题
https://issuetracker.google.com/issues/new?component=190602&template=1227583
期待您的应用在 Android Q 上的精彩表现!
推荐阅读