CameraX 概述 是 Android Jetpack 的一部分。
CameraX 是一个 Jetpack 库,旨在简化相机应用开发。对于新应用,我们建议您从 CameraX 开始。它提供了一个一致且易于使用的 API,适用于绝大多数 Android 设备,并向后兼容 Android 5.0(API 级别 21)。如果您要将应用从 Camera1 迁移,请参阅我们的 Camera1 迁移到 CameraX 指南。
主要优势
CameraX 通过多种关键方式改善了开发者体验。
广泛的设备兼容性
CameraX 支持运行 Android 5.0(API 级别 21) 及更高版本的设备,占现有 Android 设备的 98% 以上。
易用性
CameraX 强调用例,使您能够专注于需要完成的任务,而不是管理特定设备的细微差别。支持大多数常见的相机用例
跨设备的一致性
保持相机行为的一致性非常困难。您必须考虑纵横比、方向、旋转、预览大小和图像大小。使用 CameraX,这些基本行为可以正常工作。
我们维护了一个自动化的 CameraX 测试实验室,该实验室在 一系列设备 和 Android 5.0 之后的各个操作系统版本上测试各种相机行为。这些测试会持续运行,以识别和修复各种问题。
相机扩展
CameraX 具有一个可选的 扩展 API,使您能够仅用两行代码即可访问与设备原生相机应用相同的特性和功能。
扩展包括散景(肖像)、高动态范围 (HDR)、夜间模式和面部修饰,所有这些功能都需要设备支持。
案例研究
要了解 CameraX 如何简化 Monzo 的开发,请参阅 其案例研究。
文档
其他资源
要详细了解 CameraX,请参阅以下其他资源。
Codelab
代码示例