- 博客(7)
- 资源 (2)
- 收藏
- 关注
原创 2.2Camera open在Framework中的过程
在前面的内容中,我们提到过CameraManager类的主要用途是open camera,这一节我们将详细梳理这一过程在Framework中的类和逻辑。SDK提供的方法最终调用openCameraDeviceUserAsync方法,通过观察我们可以知道最核心的代码只有两行,其中第一句获取了CameraService对象,随后调用了它的connectDevice方法,并返回了一个ICa...
2019-11-27 17:51:01 737
原创 2.1 Android启动与CameraService进程加载
从这一章节开始,笔者将对Camera的Framework框架进行分析。对于Camera Framework框架而言,其核心就是CameraService,所以本节将首先探究Camera service是什么,Camera Service是怎么来的。Android框架启动过程Android在开机时,首先装载BootLoader引导程序,进行硬件上电,从初始代码处开始执行初始化,再进行第二...
2019-11-25 16:04:12 1422
原创 1.4Metadata与Characteristics
在上一节我们已经学习过Camera的参数通过Session下发到HAL层,这一节我们将详细探索CameraMetadata。在公开的SDK中,除了CameraMetadata类之外,还存在三个继承它的子类,分别是CameraCharacteristics、CaptureRequest、CaptureResult类。通过名字,我们可以轻易地分析出看出CameraCharacteristi...
2019-11-20 11:17:10 800
原创 1.3Camera2 Session机制详解及Camera1的对比
想要理解API2的Session机制,不能简单的只从Camera看,而是要结和Sesion本身的概念来看。一、Session机制1、Web应用中的Session计算机领域的Session概念主要来自于Web通信,在网络应用中,称为会话控制。“Session对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失...
2019-11-18 18:31:11 1795
原创 1.2Camera Preview流程及源码分析
Camera API2的预览实现在网上有非常多的代码可以参考,包括Google官方提供的Demo。直接看代码,模仿、改写当然是最快的实现方式,但如果其中的逻辑关系可能没有捋顺清楚,在没有参考代码的情况下,能否同样实现相关功能就值得商榷了。1API2架构图这个图是一个常见的用于展示API2架构的图,但事实上这个图并不能对架构和开发起到很好的帮助。这个图的主要问题是无法搞清楚Came...
2019-11-14 18:29:43 1558 1
原创 1.1Android Camera源码路径及类简介
Camera API是Android APP开发的主要方式,Android 9.0主要有1.0和2.0两个版本。目前Google在全面推API2,但是应用市场上的主流应用大部分依然使用的是1.0,如QQ、微信等;而一般手机自带的相机应用都是Camera API 2. 本文及后续都将以API2为主,涉及代码部分将以Kotlin为主,Android源码部分以官方开源版本为准。一...
2019-11-13 11:00:43 1308
原创 Android Camera开发完全手册
随着Android版本迭代,Camera的重要性也日益凸显。Camera的数量从后置单颗发展到最新的后置五颗模组;分辨率从后置200万发展到惊人的一亿像素。Android Camera几乎每一代都在发生翻天覆地的变化。这些变化是作为终端用户直观感受得到的,而作为从业者同样能够感受到来自软硬件的巨大变化。 Google将Camera SDK从API1升级到API2;Came...
2019-11-12 16:36:00 1502
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人