zoukankan      html  css  js  c++  java
  • <Android Framework 之路>Android5.1 Camera Framework(四)——框架总结

    前言

    从之前的几篇文件,可以基本弄清楚 Camera从APK,经过framework的衔接,与HAL层进行交互,最终通过驱动完成Camera的一些动作。

    Camera层次分析

    • APP层
    • Framework层
    • 库层

    大致的框架图如下
    这里写图片描述

    从图中可以看到几个关键的地方:
    1. APP从JAVA层过渡到CPP层中间通过JNI层的android_hardware_Camera.cpp文件实现,文件中主要涉及从java方法到cpp函数的映射关系,方便作出对应的处理;
    2. Camera交互对象,从开始连接过程中式Camera与CameraService,连接之后基本上就是Camera与CameraClient进行交互,这里注意到CameraClient是继承CameraService::Client的,而后者则是继承BnCamera,继承ICamera,Camera类中存在一个ICamera变量,就是这个内容;
    3. Camera类继承BnCameraClient,继承ICameraClient,这样就可以实现Camera与CameraClient的交互
    4. 至于CameraService与Camera底层库的交互,只是Camera HAL 层的模块加载是在CameraService中实现的,真正的HAL层的创建是在CameraClient的初始化过程中

    今天的内容比较的少,主要是总结下。

    本文中代码使用的是Android5.1原始代码
    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    ubutu安装phonegap 后出现/usr/bin/env:node No such file or directory的错误
    Ubuntu 14.04 x64 安装 Android SDK
    ubuntu64安装ia32-libs
    redis 配置
    flask部署阿里云
    爬虫数据存储
    selnuim 使用
    python 爬虫解析_1_
    scrapy 数据存储mysql
    scrapy 小案例
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6467216.html
Copyright © 2011-2022 走看看