1 Android 的 Camera 架构介绍 第一部分 Camera 概述 Android 的 Camera 包含取景器( view finder) 和拍摄照片的功能
目前Android 发布版的Camera 程序虽然功能比较简单,但是其程序的架构分成客户端和服务器两个部分,它们建立在 Android 的进程间通讯Binder 的结构上
以开源的Android 为例,Camera 的代码主要在以下的目录中: Camera 的 JAVA 程序的路径: packages/apps/Camera/src/com/android/camera/ 在其中Camera
java 是主要实现的文件 Camera 的 JAVA 本地调用部分(JNI): frameworks/base/core/jni/android_hardware_Camera
cpp 这部分内容编译成为目标是libandroid_runtime
主要的头文件在以下的目录中: frameworks/base/include/ui/ Camera 底层库在以下的目录中: frameworks/base/libs/ui/ 这部分的内容被编译成库libui
Camera 服务部分: frameworks/base/camera/libcameraservice/ 这部分内容被编译成库libcameraservice
为了实现一个具体功能的Camera, 在最底层还需要一个硬件相关的Camer 库 (例如通过调用video for linux 驱动程序和Jpeg 编码程序实现)
这个库将被Camera 的服务库libcameraservice
2 第二部分 Camera 的接口与架构 2
1 Camera 的整体框架图 Camera 的各个库之间的结构可以用下图的表示: libui