Google I/O 的大幕已经拉开,我们也为大家带来了 Android 14 的第二个 Beta 版。我们在 Google I/O 上为大家准备了许多精彩的演讲,包括对 Android 14 许多新功能的详细介绍。这次发布的 Beta 2 聚焦相机和媒体、隐私和安全、系统界面以及开发者生产力方面的改进。我们还在继续完善大屏设备上的体验,并首次在指定合作伙伴的手机、平板电脑和可折叠设备上提供 Android 14 Beta 版测试计划。
Google I/O
https://io.google/2023/
Android 精彩演讲
https://io.google/2023/program/?q=android,mobile
参与 Beta 版测试
https://www.google.com/android/beta
Android 14 开发者网站
https://developer.android.google.cn/about/versions/14
获取 Google Pixel 系统映像
https://developer.android.google.cn/about/versions/14/download
发布时间表
https://developer.android.google.cn/about/versions/14/overview#timeline
提交反馈
https://developer.android.google.cn/about/versions/14/feedback
现已支持更多设备
现在您可以在我们合作伙伴的设备上体验 Android 14 Beta 版,他们包括 iQOO、联想、Nothing、一加、OPPO、realme、TECNO、vivo 和小米。
合作伙伴的设备
https://developer.android.google.cn/about/versions/14/devices
高质量相机和媒体体验
Android 设备以高品质的相机而闻名。去年的 Android 13 已经带来了诸多这方面的提升,比如支持录制生动的高动态范围 (HDR,能支持数十亿种颜色) 视频,通过相机扩展来帮助设备厂商们提供诸如夜间模式和散景 (bokeh) 等功能,以及为相机数据流用例提供优化,等等。Android 14 则在这些提升的基础上更进一步。超强 HDR (Ultra HDR) 图片
Android 现在支持 10 位高动态范围 (HDR) 图像,从而得以更多地保留拍摄照片时传感器捕捉到的信息,带来更鲜艳的色彩和更高的对比度。而且 Android 使用的超强 HDR 格式完全向后兼容 JPEG,应用可以无缝使用 HDR 图像,根据需要使用标准动态范围来呈现它们。您只需在应用中指定其 Activity 窗口使用 HDR 界面功能,比如通过应用清单设置或在运行时调用 Window.setColorMode,框架便会自动将界面中的这些图像以 HDR 来呈现。
超强 HDR 图像格式 v0.9.1
https://developer.android.google.cn/guide/topics/media/hdr-image-format
以广色域模式显示 Activity
https://developer.android.google.cn/guide/topics/manifest/activity-element#colormode
Window.setColorMode
https://developer.android.google.cn/reference/android/view/Window#setColorMode%28int%29
JPEG_R 格式
https://developer.android.google.cn/reference/android/graphics/ImageFormat#JPEG_R
Gainmap
https://developer.android.google.cn/reference/android/graphics/Gainmap
升级相机扩展的缩放、对焦、后视等功能
Android 14 升级和改进了相机扩展功能,让应用支持更长的处理时间,通过计算密集型算法改善成像品质,比如在支持的设备上使用微光拍摄。相机扩展
https://developer.android.google.cn/training/camera/camera-extensions
通过这些改进,用户在使用相机扩展功能时会获得更强大的体验,包括:
CameraExtensionSession.getRealtimeStillCaptureLatency()
https://developer.android.google.cn/reference/android/hardware/camera2/CameraExtensionSession#getRealtimeStillCaptureLatency%28%29
StillCaptureLatency
https://developer.android.google.cn/reference/android/hardware/camera2/CameraExtensionSession.StillCaptureLatency
getCaptureLatency()
https://developer.android.google.cn/reference/android/hardware/camera2/CameraExtensionSession.StillCaptureLatency#getCaptureLatency%28%29
CameraExtensionCharacteristics.isCaptureProcessProgressAvailable()
https://developer.android.google.cn/reference/android/hardware/camera2/CameraExtensionCharacteristics#isCaptureProcessProgressAvailable%28int%29
onCaptureProcessProgressed()
https://developer.android.google.cn/reference/android/hardware/camera2/CameraExtensionSession.ExtensionCaptureCallback#onCaptureProcessProgressed%28android.hardware.camera2.CameraExtensionSession,%20android.hardware.camera2.CaptureRequest,%20int%29
CaptureRequest.EXTENSION_STRENGTH
https://developer.android.google.cn/reference/android/hardware/camera2/CaptureRequest#EXTENSION_STRENGTH
EXTENSION_BOKEH
https://developer.android.google.cn/reference/android/hardware/camera2/CameraExtensionCharacteristics#EXTENSION_BOKEH
CameraExtensionCharacteristics.isPostviewAvailable()
https://developer.android.google.cn/reference/android/hardware/camera2/CameraExtensionCharacteristics#isPostviewAvailable%28int%29
OutputConfiguration
https://developer.android.google.cn/reference/android/hardware/camera2/params/OutputConfiguration
ExtensionSessionConfiguration.setPostviewOutputConfiguration()
https://developer.android.google.cn/reference/android/hardware/camera2/params/ExtensionSessionConfiguration#setPostviewOutputConfiguration%28android.hardware.camera2.params.OutputConfiguration%29
传感器内缩放
如果 CameraCharacteristics 的 REQUEST_AVAILABLE_CAPABILITIES_STREAM_USE_CASE 包含 SCALER_AVAILABLE_STREAM_USE_CASES_CROPPED_RAW,则您的应用可以通过调用 CaptureRequest 并指定一个 RAW 目标对象,其数据流用例设为 CameraMetadata.SCALER_AVAILABLE_STREAM_USE_CASES_CROPPED_RAW,来使用高级传感器功能为裁切过的 RAW 数据流提供和全视角相同的像素数。实现控件覆盖请求后,更新后的相机甚至能在其他相机控件就绪之前就为用户提供缩放控制功能。
CameraCharacteristics
https://developer.android.google.cn/reference/android/hardware/camera2/CameraCharacteristics
REQUEST_AVAILABLE_CAPABILITIES_STREAM_USE_CASEhttps://developer.android.google.cn/reference/android/hardware/camera2/CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_STREAM_USE_CASE
SCALER_AVAILABLE_STREAM_USE_CASES_CROPPED_RAW
https://developer.android.google.cn/reference/android/hardware/camera2/CameraMetadata#SCALER_AVAILABLE_STREAM_USE_CASES_CROPPED_RAWCaptureRequest
https://developer.android.google.cn/reference/android/hardware/camera2/CaptureRequest
无损 USB 音频
Android 14 现在支持无损音频格式,让您可以通过 USB 有线耳机获得发烧友级别的体验。您可以查询 USB 设备的首选混音器属性,为该属性的变化注册一个监听器,然后使用新的 AudioMixerAttributes 类来配置混音器属性。这个类提供了格式的详细信息,比如通道掩码、采样率和混音器行为,而且支持音频直传,即不提供混音、音量调节和后期效果。我们正在和 OEM 合作伙伴们一起努力,在今年晚些时候将这个功能实装到设备上。AudioMixerAttributes
https://developer.android.google.cn/reference/android/media/AudioMixerAttributes
音频直传
https://developer.android.google.cn/reference/android/media/AudioMixerAttributes#MIXER_BEHAVIOR_BIT_PERFECT
更多图像功能
Android 14 增加了先进的图形功能,可在 Canvas 层级活用复杂的 GPU 功能。
带有顶点和片段着色器的自定义网格
长期以来,Android 都支持绘制带有自定义着色的三角形网格,但支持的网格格式一直存在限制,仅限于一些预定义的属性组合。Android 14 增加了对自定义网格的支持,这些网格可以被定义为三角形或三角形带,如果您需要的话还能支持索引。这些网格是用 AGSL 编写的,包含自定义属性、顶点跨度、varying 变量和顶点/片段着色器。顶点着色器定义了 varying,如位置和颜色,片段着色器则可以选择性地定义像素的颜色,通常是使用顶点着色器创建的 varying 变量。如果颜色是由片段着色器提供的,那么在绘制网格时会使用选择好的混合模式与当前的 Paint 颜色进行混合。如果您需要更多的灵活性,可以将 uniform 变量传递给片段和顶点着色器。
自定义网格
https://developer.android.google.cn/reference/kotlin/android/graphics/Mesh
三角形
https://developer.android.google.cn/reference/kotlin/android/graphics/Mesh?#TRIANGLES:kotlin.Int
三角形带
https://developer.android.google.cn/reference/kotlin/android/graphics/Mesh?#triangle_strip
AGSL
https://developer.android.google.cn/develop/ui/views/graphics/agsl
网格定义
https://developer.android.google.cn/reference/kotlin/android/graphics/MeshSpecification
自定义属性
https://developer.android.google.cn/reference/kotlin/android/graphics/MeshSpecification.Attribute
Varying
https://developer.android.google.cn/reference/kotlin/android/graphics/MeshSpecification.Varying
混合模式
https://developer.android.google.cn/reference/kotlin/android/graphics/BlendMode
Paint
https://developer.android.google.cn/reference/android/graphics/Paint
Uniform
https://developer.android.google.cn/reference/android/graphics/Mesh#setFloatUniform%28java.lang.String,%20float[]%29
Canvas 硬件缓冲渲染器
Android 14 引入了 HardwareBufferRenderer,让 Android 的 Canvas API 在 HardwareBuffer 中绘制时得以使用硬件加速功能。当您的用例涉及到通过 SurfaceControl 与系统合成器通信以实现低延迟绘制时,此功能会特别有用。
HardwareBufferRenderer
https://developer.android.google.cn/reference/android/graphics/HardwareBufferRenderer
Canvas
https://developer.android.google.cn/reference/android/graphics/Canvas
HardwareBuffer
https://developer.android.google.cn/reference/android/hardware/HardwareBuffer
SurfaceControl
https://developer.android.google.cn/reference/android/view/SurfaceControl
隐私
Android 14 继续关注隐私保护,并推出全新功能让用户对自己的数据及其共享操作有更多的控制权和可见性。Health Connect
Health Connect 是存放用户健康和健身数据的设备端内容库。用户可以通过这个库在他们喜爱的应用之间共享数据,而且提供了统一的入口来管理数据的分享范围。
Health Connect 目前在 Google Play 商店作为一个应用提供下载。从 Android 14 开始,Health Connect 成为了平台的一部分,可以通过 Google Play 系统更新进行升级,不再需要单独下载。如此一来,Health Connect 可以经常获得更新,您的应用也可以在 Android 14 及以上的设备上放心使用 Health Connect。用户可以通过设备的系统设置访问 Health Connect,其隐私控制集成在系统设置中。
Health Connect 现在支持运动路线,用户可以分享他们的运动路线,并在地图上查看。路线被定义为在一个时间窗口内记录的位置列表,您的应用可以将路线插入到健身计划中,将二者联系在一起。为了确保用户完全控制这些敏感数据,在与其他应用分享路线时需要用户按路线分别授权。
这次的发布可不止这些!请大家参阅观 "Android Health 最新进展" 博文了解 Health Connect 的详细信息:
https://android-developers.googleblog.com/2023/05/whats-new-in-android-health.html数据分享更新
我们在位置信息的运行时授权对话框中新增了一块描述,来突出显示应用与第三方共享位置数据的情况。用户可以了解更多信息并控制应用对数据的访问。这些描述信息来自 Google Play 管理中心的数据安全表单。其他应用商店也将能够提供一个机制来呈现这些信息。我们鼓励开发者审查应用的位置数据共享政策,并对应用的数据安全信息进行更新以确保其符合实际情况。此变更将很快发布。
Google Play 管理中心
https://developer.android.google.cn/distribute/console
数据安全表单
https://support.google.com/googleplay/android-developer/answer/10787469
此外,如果有位置权限的应用改变了其数据共享方案,开始与第三方共享这些数据,用户将定期得到通知。
新的位置数据共享变更页面将被添加进系统设置页面。
安全的全屏 Intent 通知
从 Android 11 (API 级别 30) 开始,任何应用都可以使用 Notification.Builder#sendFullScreenIntent 来在手机锁定时发送全屏 Intent。您可以通过在 Android 应用清单中声明 USE_FULL_SCREEN_INTENT 来在应用安装时自动获得该权限。
Notification.Builder#sendFullScreenIntent
https://developer.android.google.cn/reference/android/app/Notification.Builder#setFullScreenIntent%28android.app.PendingIntent,%20boolean%29
USE_FULL_SCREEN_INTENT
https://developer.android.google.cn/reference/android/Manifest.permission#USE_FULL_SCREEN_INTENT
全屏 Intent 通知是针对需要用户立即关注的极高优先级的通知而设计的,如来电或用户设置的闹钟等。从 Android 14 开始,我们将只允许提供通话和闹钟功能的应用在安装时获取该权限。
在用户更新到 Android 14 之前便已安装的应用,该权限会继续有效。用户可以自行开启或关闭这一权限。
您可以使用新的 NotificationManager.canUseScreenIntent API 来检查自己的应用是否有被授予这个权限。如果没有,则可以使用新的 ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT Intent 来启动设置页面以让用户授权。
NotificationManager.canUseScreenIntent
https://developer.android.google.cn/reference/android/app/NotificationManager#canUseFullScreenIntent%28%29
ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT
https://developer.android.google.cn/reference/android/provider/Settings#ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT
系统界面
预测性返回 (Predictive Back)
△ Material 组件搜索动画
随着 Android 14 Beta 2 的发布,我们带来了多项改进和新的规范,以帮助大家在应用的 Activity 之间导航时呈现更流畅的动画:android:enableOnBackInvokedCallback=true
https://developer.android.google.cn/reference/android/R.attr.html#enableOnBackInvokedCallback
底部表单
https://m3.material.io/components/bottom-sheets/guidelines#3d7735e2-73ea-4f3e-bd42-e70161fc1085
侧面表单
https://m3.material.io/components/side-sheets/guidelines#d77245e3-1013-48f8-a9d7-76f484e1be13
搜索
https://m3.material.io/components/search/guidelines#3f2d4e47-2cf5-4c33-b6e1-5368ceaade55
预测性返回动画设计指南
http://developer.android.google.cn/design/ui/mobile/guides/patterns/predictive-back
OnBackPressedCallback
https://developer.android.google.cn/reference/androidx/activity/OnBackPressedCallback#OnBackPressedCallback%28kotlin.Boolean%29
handleOnBackStarted
https://developer.android.google.cn/reference/androidx/activity/OnBackPressedCallback#handleOnBackStarted%28android.window.BackEvent%29
handleOnBackProgressed
https://developer.android.google.cn/reference/androidx/activity/OnBackPressedCallback#handleOnBackProgressed%28android.window.BackEvent%29
handleOnBackCancelled
https://developer.android.google.cn/reference/androidx/activity/OnBackPressedCallback#handleOnBackCancelled%28%29
OnBackAnimationCallback
https://developer.android.google.cn/reference/kotlin/android/window/OnBackAnimationCallback
onBackStarted
https://developer.android.google.cn/reference/kotlin/android/window/OnBackAnimationCallback#onbackstarted
onBackProgressed
https://developer.android.google.cn/reference/kotlin/android/window/OnBackAnimationCallback#onbackprogressed
onBackCancelled
https://developer.android.google.cn/reference/kotlin/android/window/OnBackAnimationCallback#onbackcancelled
overrideActivityTransition
https://developer.android.google.cn/reference/android/app/Activity#overrideActivityTransition%28int,%20int,%20int,%20int%29
overridePendingTransition
https://developer.android.google.cn/reference/android/app/Activity#overridePendingTransition%28int,%20int%29
在 Android 14 Beta 2 中,所有预测性返回动画功能依然在开发者选项里。请参阅开发者指南了解如何让应用支持预测性返回,以及如何创建自定义应用内转场动画。
添加对预测性返回手势的支持
https://developer.android.google.cn/guide/navigation/predictive-back-gesture
应用兼容性
随着 Beta 2 的发布,我们距离 2023 年 6 月的平台稳定性里程碑只有一步之遥,届时我们将得到最终版本的 Android 14 SDK 和 NDK API,面向应用的系统行为也将最终确定。现在 Android 14 Beta 版已经可以在更多的设备上运行,您将在接下来的几周看到更多用户在 Android 14 上体验您的应用,并提交他们发现的问题。 要进行兼容性测试,请在运行 Android 14 Beta 版的设备或模拟器上安装您的正式版应用,并测试应用的所有流程。请通过行为变更清单来确定测试重点。在解决所有发现的问题后,请尽快发布应用的更新。
行为变更 (针对所有应用)
https://developer.android.google.cn/about/versions/14/behavior-changes-all
现在也可以开始准备将应用的目标平台升级至 Android 14 了,只需使用开发者选项中的应用兼容性开关进行测试即可。
△ 开发者选项中的应用兼容性开关
即刻体验 Android 14
不论您是想体验 Android 14 的功能、测试应用还是提交反馈,都可以从这次的 Beta 2 开始。您还可以使用我们合作伙伴的设备来测试应用在平板电脑和可折叠设备上的表现,不过最简单的方法还是使用 Android Studio SDK 管理器最新预览版中安装了 64 位系统映像的 Android 模拟器中的 Pixel Tablet 或 Pixel Fold 配置进行测试。您还可以直接使用支持的 Pixel 设备参与测试,并通过 OTA 方式获得本次以及将来的 Android 14 Beta 版 (包括功能更新)。
反馈与需求
https://developer.android.google.cn/about/versions/14/feedback
安装 SDK
https://developer.android.google.cn/about/versions/14/setup-sdk#install-sdk
参与 Beta 版测试
https://www.google.com/android/beta
为了获得最佳的 Android 14 开发体验,我们建议您使用 Android Studio Hedgehog 的最新版本。
Android Studio Hedgehog
https://developer.android.google.cn/studio/preview
设置 Android 14 SDK
https://developer.android.google.cn/about/versions/14/setup-sdk
兼容性框架变更 (Android 14)
https://developer.android.google.cn/about/versions/14/reference/compat-framework-changes
https://developer.android.google.cn/about/versions/14
谷歌开发者
在微信和微博平台搜索 "谷歌开发者"
关注官方账号
点击屏末 | 阅读原文 | 进一步了解 Android 14 详细更新
原文标题:在 I/O 看未来 | 丰富多彩,Android 14 Beta 2 发布
文章出处:【微信公众号:谷歌开发者】欢迎添加关注!文章转载请注明出处。
全部0条评论
快来发表一下你的评论吧 !