最近在从事有关Android Camera开发相关的工作,发现这一块还是比较复杂,从网络上也得到很多相关资料,但是都比较分散,对于出现的问题很难有个全面地了解与定位。
根据我自己的习惯,我比较喜欢把整个框架先大概了解一下,再针对某个部件进行认真分析,这样在出现问题的时候就可以做到有的放矢。
发现系统无法上传我的图片,可能是我本地加密的原因 ,只能这样凑合了
Camera Java application packages/apps/Camera/src/com/android/camera/camera.java |
Camera Java API frameworks/base/core/java/android/hardware/Camera.java |
JVM |
Camera Native API frameworks/base/core/jni/android_hardware_Camera.cpp |
Camera Base API frameworks/base/libs/ui/Camera.cpp Camera Base API frameworks/base/libs/ui/Icamera.cpp Camera Base API frameworks/base/libs/ui/ICameraService.cpp |
Binder |
Camera Service frameworks/base/camera/libcameraservice/CameraService.cpp |
Camera HAL(CameraHardwareInterface) Camerahal.cpp |
Linux system call |
V4L2 for Camera driver |
Camera Sensor driver |