你需要知道的Android拍照适配方案.pdfVIP

  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拍照适配方案 前言 近段时间,家里陪自己度过大学四年的电脑坏了,挑选好的新电脑配件终于 本周全部到货,自己动手完成组装。从 A MD到i7的C PU,6G 内存到14G 内存,打开 A ndroid Studio 的速度终于杠杆地上去了,感动到泪流满面 啊!!!!!!!扯了这么多,回归一下正题,还是来说说本篇文章要写什么吧!说起调用系统相机来拍照的功能,大 家肯定不陌生,现 所有应用都具备这个功能。例如最基本的,用户拍照上传头像。Android开发的孩纸都知道,碎片化 给拍照这个功能的实现带来挺多头疼的问题。所以,我决定写写一些网上不多见但又经常听到童鞋们吐槽的问题。 拍照功能实现 A ndroid 程序上实现拍照功能的方式分为两种:第一种是利用相机的 A P I 来自定义相机,第二种是利用 Intent 调用系统指 定的相机拍照。下面讲的内容都是针对第二种实现方式的适配。 通常情况下,我们调用拍照的业务场景是如下面这样的: 1. A 界面,点击按钮调用相机拍照; 2. A 界面得到拍完照片,跳转到 B 界面进行预览; 3. B 界面有个按钮,点击后触发某个业务流程来处理这张照片; 实现的大体流程代码如下: //1. 调用相机 File mPhotoFile = new File (folder,filename); Intent captureIntent = new Intent(MediaStore.A TION_IMAGE_ APTURE); Uri fileUri = Uri.fromFile (mPhotoFile); captureIntent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); mActivity.startActivityForResult(captureIntent, APTURE_PHOTO_REQUEST_ ODE); //2. 拿到照片@Overrideprotectedvoid onActivityResult(int request ode, int result ode, Intent data) { if (request ode == apturePhotoHelper. APTURE_PHOTO_REQUEST_ ODE result ode == RESULT_OK) { File photoFile = m apturePhotoHelper.getPhoto();//获取拍完的照片if (photoFile != null) { PhotoPreviewActivity.preview (this, photoFile);//跳转到预览界面 } finish (); } else { super.onActivityResult(request ode, result ode, data); } } //3. 各种各样处理这张图片的业务代码 到这里基本科普完了如何调用系统相机拍照,相信这些网上一搜一大把的代码,很多童鞋都能看懂。 有没有相机可用? 前面讲到我们是调用系统指定的相机App来拍照,那么系统是否存 可以被我们调用的App呢?这个我们不敢确定,毕竟 A ndroid 奇葩问题多,还真有遇到过这种极端的情况导致闪退的。虽然很极端,但作为客户端人员还是要进行处理,方式 有二: 1. 调用相机时,简单粗暴的 try-catc ; 2. 调用相机前,检测系统有没有相机 App 可用; try-catc 这种粗暴的方式大家肯定很熟悉了,那么要如何检测系统有没有相机 A pp 可用呢?系统 PackageManager 里 为我们提供这样一个 A PI。 通过这样一个 A P I ,可以知道系统是否存 action 为 MediaStore.A CTION_ IMA GE_CA PTURE 的 intent 可以唤起的拍照 界面,具体实现代码如下: /** * 判断系统中是否存 可以启动的相机应用 * * @return 存 返回true,不存 返回false */publicboole

您可能关注的文档

文档评论(0)

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

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

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档