AM安卓完整报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android照相机软件 软件需求分析 如今很多科技进步更新很快,也给人们带来了方便,手机的功能越来越强大,人们对手机的需求早已不是基本的打电话和发短信,人们更多的是希望手?机能像电脑一样方便,所以智能手机渐渐成为人们选择的目标。其中Android照相机的种类也越来越多。设计Android照相机首先要对照相机的各种性能有一定的了解,要知道一个Android照相机都包含哪些必备的东西,在大脑里形成一定的脉络。 在没有硬件的情况下可以在虚拟机里创建开发环境和测试。Eclipse就是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。 基于Android的笑脸识别照相机和普通照相机有大部分的性能是一样的,都需要进行对主界面的设置,相机焦距的自动调节,配置相机特性的参数,保存图片等等。不同的在于,笑脸识别照相机是一款手机处在拍摄界面时通过被拍摄人是否微笑来感应从而实现拍照功能,即先轻敲摄像头按钮,当被拍人物微笑就会时自动拍照。 软件总体设计 2.1过程设计 (1)主界面:全屏,半透明; (2)轻敲摄像头按钮,当被拍人物微笑时自动拍照; (3)图片被点击触发的时间; (4)拍摄的图片的预览设置:预览大小,设置Surface分辨率; (5)图片保存和保存拍摄图片后还需要配置相机特性的参数,设置保存的图片尺寸以及设置图片质量; (6)拍摄效果:反光,黑白等; (7)写相应的数据权限。 2.2拍摄流程图 主界面 主界面 笑脸感应拍摄 相机自动焦距 保存图片 开启相机 拍摄图片预览 退出 屏幕常亮 放弃拍摄 返回拍摄主界面 2.2拍摄流程图 关键技术分析 设计Android照相机过程一些可能需要用到的函数: 创建一个Activity? 用来标识请求照相功能。activity在创建的时候回调的函数主要用来初始化一些变量。 SurfaceHolder.Callback接口:? SurfaceHolder.Callback是用于接受发生在SurfaceView中变化的信息?SurfaceHolder.Callback?实现三个函数:?surfaceChanged? 当surface的大小或是尺寸变化的时候调用?surfaceCreated?; 当surface被创建时调用?surfaceDestroyed;? 当surface被毁坏时调用。 SurfaceView 控件显示照相机中的预览效果。 (3)屏幕显示设为半透明,全屏,没有标题: setContentView(R.layout.main?);? mSurfaceView?=?(SurfaceView)?findViewById(R.id.surface_camera)。 (4)surfaceHolder surfaceHolder用来控制SurfaceView,它是系统提供的一个用来设置surfaceView的一个对象,而它通过 surfaceView.getHolder()这个方法来获得。 而Camera提供一个 setPreviewDisplay(SurfaceHolder)的方法来连接surfaceHolder,并通过来它控制surfaceView。 (5)startPreview()和stopPreview() 开启和关闭预览。 (6)Camera.open() 这是个静态方法,如果相机没有别人用着,则会返回一个相机引用,如果被人用着,则会抛出异常。 (7)SurfaceHolder.Callback 这是个holder用来显示surfaceView 数据的接口,他分别必须实现3个方法:   surfaceCreated()这个方法是surface 被创建后调用的;   surfaceChanged()这个方法是当surfaceView发生改变后调用的;   surfaceDestroyed()这个是当surfaceView销毁时调用的。   surfaceHolde通过addCallBack()方法将响应的接口绑定到他身上。surfaceHolder还必须设定一个setType()方法。 (8)MySurfaceView类 它继承于SurfaceView,并在里面实现了照相机的预览功能. (9)camera.tackPiture() camera.tackPiture()这个方法是用来实现拍照功能,这个方法有三个参数:ShutterCallBack shutter,PictureCallBack raw和PictureCallBack jpeg。 (10

文档评论(0)

22255990 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档