Android Camera API发展历程

Android Camera API发展历程

一、Android Camera API介绍

Android系统中Camera API是用于控制相机设备的主要API,到目前为止,Camera API历史上共历经了三版重要的API。

在Android 5.0之前,主要使用的是Camera API1,但现在已经弃用。

从Android 5.0开始,Google推荐使用Camera2 API。

在更高版本的Android中,CameraX API被引入,它是基于Camera 2 API的封装,进一步简化了开发流程,并增加了生命周期控制。

二、各API的官方文档

  1. Camera API1

官方地址:https://developer.android.google.cn/guide/topics/media/camera?hl=zh\_cn

相机框架Camera:android.hardware.Camera

  1. Camera2 API介绍

官方地址:android.hardware.camera2  |  Android Developers

相机框架Camera2: android.hardware.camera2

  1. CameraX框架

官方地址:CameraX overview  |  Android media  |  Android Developers

三、Camera APP开发需要了解的基础知识

  1. CameraX 和 Camera2 均适用于 Android 5.0(API 级别 21)及更高版本

  2. CameraX API是基于Camera 2 API进行了封装,提供更加高级的抽象和简化的API接口。

  3. Camera2 API是控制相机的核心API,使用它可以实现拍照和录制视频的功能。在使用Camera2 API时,应用需要先获取相机的访问权限,然后创建相机捕获会话,配置相机参数,最后启动相机预览或拍照。Camera2 API的使用相对复杂,需要对相机的各个参数进行配置,包括预览分辨率、拍照分辨率、闪光灯模式等。

  4. 使用CameraX API,应用开发者无需关心底层的相机配置和参数设置,只需调用相应的API接口即可实现拍照和录制视频的功能。CameraX API还提供了生命周期控制,可以自动管理相机的打开和关闭,避免了因忘记关闭相机而导致的资源泄漏问题。

四、应用开发调用Camera API的建议

1. 原则上不再使用Camera API 1, 除非是在一些很老的设备上,Android版本低于Andorid 6

2. 对于商业化Camera应用的开发,优先使用CameraX API, 这能让开发者集中精力在功能和业务逻辑上

3. 对于调试调式相机通路以及测试用途的Camera Demo来说,Camera2 API和CameraX API并没有本质上的区别,可以根据项目具体情况来使用

相关推荐

  1. ChatGPT发展历程

    2024-07-09 22:44:07       99 阅读
  2. http协议发展历程

    2024-07-09 22:44:07       34 阅读
  3. 《鸿蒙发展历程记录》

    2024-07-09 22:44:07       28 阅读
  4. linux发展历程

    2024-07-09 22:44:07       31 阅读
  5. 计算机视觉发展历程

    2024-07-09 22:44:07       20 阅读
  6. 前端框架的发展历程

    2024-07-09 22:44:07       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-09 22:44:07       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-09 22:44:07       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-09 22:44:07       57 阅读
  4. Python语言-面向对象

    2024-07-09 22:44:07       68 阅读

热门阅读

  1. 工作日常学习记录

    2024-07-09 22:44:07       24 阅读
  2. ELK的储存、分析功能介绍!

    2024-07-09 22:44:07       24 阅读
  3. Linux实战记录

    2024-07-09 22:44:07       24 阅读
  4. 价值投资者什么时候卖出股票?

    2024-07-09 22:44:07       24 阅读
  5. 【大模型】小样本学习:解锁微调LLM的潜力

    2024-07-09 22:44:07       26 阅读
  6. 大数据处理系统架构特征

    2024-07-09 22:44:07       21 阅读
  7. 应用程序提权

    2024-07-09 22:44:07       24 阅读