77范文网 - 专业文章范例文档资料分享平台

Android Camera分析(6)

来源:网络收集 时间:2020-12-22 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

完整讲解了android中camera的工作机制,代码分析。对了解整个android工作流程会有很大的帮助。

从Camera的整体结构上,类Camera是整个系统核心,ICamera类提供了Camera主要功能的接口,

在客户端方面调用,CameraService是Camera服务,它通过调用实际的Camera硬件接口来实现功能。事实上,图中红色虚线框的部分都是Camera程序的框架部分,它主要利用了Android的系统的Binder机制来完成通讯。蓝色的部分通过调用Camera硬件相关的接口完成具体的Camera服务功能,其它的部分是为上层的JAVA程序提供JNI接口。在整体结构上,左边可以视为一个客户端,右边是一个可以视为服务器,二者通过Android的Bimder来实现进程间的通讯。2.2头文件ICameraClient.h

ICameraClient.h用于描述一个Camera客户端的接口,定义如下所示:classICameraClient:publicIInterface{public:

DECLARE_META_INTERFACE(CameraClient);virtualvoidshutterCallback()=0;

virtualvoidrawCallback(constsp<IMemory>&picture)=0;virtualvoidjpegCallback(constsp<IMemory>&picture)=0;virtualvoidframeCallback(constsp<IMemory>&frame)=0;virtualvoiderrorCallback(status_terror)=0;virtualvoidautoFocusCallback(boolfocused)=0;

};

classBnCameraClient:publicBnInterface<ICameraClient>{public:

virtualstatus_tonTransact(uint32_tcode,

constParcel&data,Parcel*reply,uint32_tflags=0);

};

在定义中,ICameraClient类继承IInterface,并定义了一个Camera客户端的接口,BnCameraClient继

承了BnInterface<ICameraClient>,这是为基于Android的基础类Binder机制实现在进程通讯而构建的。根据BnInterface类模版的定义BnInterface<ICameraClient>类相当于双继承了BnInterface和ICameraClient。

IcameraClient这个类的主要接口是几个回调函数shutterCallback、rawCallback和jpegCallback等,

它们在相应动作发生的时候被调用。作为Camera的“客户端”,需要自己实现几个回调函数,让服务器程序去“间接地”调用它们。2.3头文件Camera.h

Camera.h是Camera对外的接口头文件,它被实现CameraJNI的文件

android_hardware_Camera.cpp所调用。Camera.h最主要是定义了一个Camera类:classCamera:publicBnCameraClient,publicIBinder::DeathRecipient{public:

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Android Camera分析(6)在线全文阅读。

Android Camera分析(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/1169296.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: