打开android 系统的相机,拍照并且图片返回
转载:http://www.jianshu.com/p/7052add136f2
之前一直不了解相机这里,也尝试写过但总是出错,这篇文章讲的很明白,特此记录,
主要介绍了打开相机进行拍照之后,获取拍照后的照片
问题1.调用系统相机拍照,并且把图片返回流程是什么?
答:1.定义一个Uri用来标记相机拍摄的照片
2.通过系统的action打开系统相机,同时传递Uri
3.拍照之后点击确定回调 onActivityResult()方法,在该方法中 获取拍照返回的Uri
注意 :有的手机的Uri此时传递回 onActivityResult 时,通过 data.getDatd( )时,为空,
这时可以用一个变量引用之前的Uri就好了;在返回的data中的是一个压缩过的Bitmap,
而且压缩的比较厉害,所以根本不会产生OOM异常作者试过之后,确实是一个清晰度
相当低的一张图片,根本不能满足需求,所以需要返回原图,当然这个原图是需要处理
的,否则依然会出现OOM
问题2 .图片保存路径,总是分不清楚,图片存在哪里,返回Uri的话,图片Uri可以转化为图片的路径string
path: 系统相册的路径
String path=Environment.getExternalStorageDirectory( )+File.separator+
Environmen.DIRECTORY_DCIM+ File.separator;
即path : /storage/emulated/0/DCIM/
存储图片(文件)的 名字 ,按照时间来命名:
private String getPhoneFileName(){
Date date =new Date(System.currentTimeMillis( ));
SimpleDateFormat dateFormat=new SimpleDateFormat("yyyyMMdd_HHmmss");
return "IMG_"+dateFormat.format(date);
}
图片存储的地址 = path+文件名+“.jpg”
问题3.涉及的权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.CAMERA"/>
下面是具体的步骤:
正常调用相机,在
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);startActivityForResult(intent, REQUEST_CODE);
然后重写onActivityResult
@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);}}
上面是整体的框架,下面是具体的代码:
关于 图片返回部分 ,如下
打开相机 ,拍照 ,完成 ,返回的图片,如图:
介绍到这里
打开android 系统的相机,拍照并且图片返回相关推荐
- Android自定义相机拍照、图片裁剪的实现
原文:Android自定义相机拍照.图片裁剪的实现 最近项目里面又要加一个拍照搜题的功能,也就是用户对着不会做的题目拍一张照片,将照片的文字使用ocr识别出来,再调用题库搜索接口搜索出来展示给用户,类 ...
- android 调用相机并获取图片地址,Android 7.0使用FileProvider获取相机拍照的图片路径...
这里主要是基于Android 7.0,Nougat 实现一个获取相机拍照的图片后,使用FileProvider把图片转换为实际的路径. 首先需要在AndroidManifest.xml声明调用相机的权 ...
- 解决三星调用系统相机拍照显示图片旋转90度横着的问题
最近项目有个功能是调用系统相机拍照上传图片的功能,发现别的手机都没有ok,只有三星的显示图片很明显是旋转了90度,横着的.后来百度了解是三星对android相机单独做了优化(android碎片化,各种 ...
- android intent拍照,Android通过Intent方式调用相机拍照取得图片
Android通过Intent方式调用相机拍照取得图片 AndroidManifest.XML 权限设置: XML布局设置: 代码: public classMainActivityextendsAp ...
- Unity for IOS 加载手机相册图片以及打开相机拍照获取图片
Unity for IOS 加载手机相册图片以及打开相机拍照获取图片 最近想做一个使用unity for IOS获取手机图片的功能,所以就研究了一下 这里我们需要创建两个objective-c文件,最 ...
- android 7.0 裁剪,Android 7.0中拍照和图片裁剪适配的问题详解
前言 Android 7.0系统发布后,拿到能升级的nexus 6P,就开始了7.0的适配.发现在Android 7.0以上,在相机拍照和图片裁剪上,可能会碰到以下一些错误: Process: com ...
- 小米部分手机在相册或相机拍照裁剪图片时,出现错误问题
小米部分手机在相册或相机拍照裁剪图片时,出现错误问题 Unable to load resource 0x00000000 from pkg=com.android.systemui 报错型号:Mi ...
- android 三星手机拍照旋转90度,解决三星调用系统相机拍照显示图片旋转90度横着的问题...
/** * 调用系统相机拍照工具类 * @author yao * */ public class CaremaUtil { private static String strImgPath = &q ...
- android自定义相机打开闪光灯,Android surfaceview 自定义相机 拍照(闪光灯、先后摄像头)...
在咱们app中常常会调用相机进行拍照,而后把拍下来的图片保存在本地,再上传到服务端,网上有很多自定义的相机,也下载了很多,可是效果仍是不满意,因此决定自定义下,很少说了,直接上代码: public c ...
最新文章
- Linux常用命令及技巧4
- 654. Maximum Binary Tree最大二叉树
- (二) LtRecyclerView v2.x (更多实用方法)
- HTML中href src区别,html中 href 和 src 的定义与区别
- xshell有大量打印时,显示信息不全
- 学术词汇 | Ablation Test or Ablation Experiment
- oracle10g 安装手册 linux,oracle10g在x86linux上的安装步骤
- Python中DataFrame按照行遍历
- linux 编辑文件 cat 跳到指定行,Linux文件操作详解(八)--文件的创建和编辑(vi/vim命令和cat命令)...
- 敏捷开发相关概念——学习笔记
- 【Hoxton.SR1版本】Spring Cloud Eureka服务注册中心单节点搭建
- OkHttp Interceptors(二)
- 计算机辅助药物设计中的分子动力学模拟
- Unit Of Measure UOM in Oracle Applications Inventory
- 分数化成有限小数的方法_怎样把分数化成小数
- 近期微信登录10005报错,解决办法
- 前端和后端的英文_前端、后端、全栈是什么意思?薪资怎么样?
- 德州扑克游戏算法讲解
- 全国356城所有银行网点数据(截至2022.2.13)
- 计算机音乐博士,美国音乐博士解析
热门文章
- java entry getvalue_Java Entry.getValue方法代碼示例
- (co-,contra-,in-)variance in Scala, what is [+-A]
- 大数据之路、阿里巴巴大数据实践读书笔记 --- 第二章、日志采集
- 国密SM3加密算法工具类(非对称)
- ISP算法----基本DPC算法实现代码
- 如何用解耦合提升开发效率?闲鱼团队有了新发现
- Window10中Dev-C++ 使用EasyX绘图库编程入门
- 计算机科学导论实验(一)
- 隐私信息检索(PIR)
- 计算机网络ieee802.3标准,计算机网络实验四IEEE 802.3协议分析和以太网