12

什么是 Android CameraX?

Google I/O 2019 计划有一个关于 CameraX 的会议。它是什么?它是一个新的框架 API 吗?是新图书馆吗? https://events.google.com/io/schedule/events/8d400240-f31f-4ac2-bfab-f8347ef3ab3e

这是否意味着不推荐使用 Camera2 API? https://github.com/googlesamples/android-Camera2Basic

4

3 回答 3

16

什么是 Android CameraX?

CameraX 是一个新的 Jetpack 库,可让开发人员控制设备的摄像头,并专注于追溯到 API 级别 21 (Lollipop) 的设备之间的兼容性。它是在 Google I/O 2019 上宣布的,并且有一个专门的文档页面和一个官方示例。

这是否意味着不推荐使用 Camera2 API?

Camera2 API 未被弃用;事实上,它是 CameraX 的基础。CameraX 还提供了一个 Camera2 互操作 API,允许开发人员使用 Camera2 代码扩展他们的 CameraX 实现。

有关更多信息,请访问https://developer.android.com/camerax获取官方文档

于 2019-05-06T23:46:10.300 回答
7

Google IO 2019中,Google在 Android 开发中添加了另一个强大的相机开发工具,称为CameraXJetpack 的一部分

CameraX 的几个特点

  • 它向后兼容直到 Android 5.0 / Lollipop (API 21),并且可以与市场上至少 90% 的设备一起使用。
  • 在底层,它使用并利用了 Camera 2 API。它基本上通过 Camera 2 Legacy 层提供与 Camera 1 API 相同的一致性,并修复了整个设备的许多问题。
  • 它还具有许多很棒的高级功能,例如人像、HDR、夜间模式等(前提是您的设备支持)。
  • CameraX 还引入了用例,让您可以专注于完成任务所需的任务,而不会在特定设备上浪费时间。其中很少有预览、图像分析、图像捕获。
  • CameraX 在 onResume() 和 onPause() 中没有特定的调用/停止方法,但它在 CameraX.bindToLifecycle() 的帮助下绑定到视图的生命周期
  • 以下是 CameraX 修复的几个已知问题列表,

在此处输入图像描述

CameraX 还能做什么

  • 您还可以使用CameraX创建 Video Recorder App
  • 添加多个扩展,如人像模式、HDR等。
  • 我们还可以使用图像分析来执行计算机视觉,ML。因此,它实现了 Analyzer 方法以在每一帧上运行。

要了解有关 CameraX 的更多信息,请参阅此处

CameraX入门

于 2019-05-16T05:34:29.090 回答
0

您可以查看官方文档

CameraX 是对 Android Jetpack 的补充,可让您更轻松地将相机功能添加到您的应用程序中。该库提供了许多兼容性修复和解决方法,以帮助开发人员在许多设备上获得一致的体验。

您可以使用 cameraX 通过称为用例的抽象与设备的相机进行交互。当前可用的用例如下:

  • Preview:准备一个预览 SurfaceTexture
  • 图像分析:为分析提供 CPU 可访问的缓冲区,例如用于机器学习
  • 图像捕获:捕获并保存照片

用例可以组合并同时激活。

只需添加依赖项:

dependencies {
  // CameraX core library
  def camerax_version = "1.0.0-alpha01"
  implementation "androidx.camera:camera-core:$camerax_version"
  // If you want to use Camera2 extensions
  implementation "androidx.camera:camera-camera2:$camerax_version"
}

有关如何使用 CameraX 库的信息,请查看此处

于 2019-05-08T08:24:54.763 回答