Android开发之获取相册照片和获取拍照照片
来源:互联网 发布:gif压缩 知乎 编辑:程序博客网 时间:2024/05/02 05:04
转自:http://blog.csdn.net/beyond0525/article/details/8939984
在Android的开发过程中,我们可能会读取手机里面的照片或者通过相机拍摄获取照片,这是两种常用的获取图片的方式,在做项目过程中也会经常遇到,下面来介绍一下这两种获取方式..
1.从本地相册获取照片:
一般就是写出这个方法
2.从照相机获取照片
一般就是写出这个方法
写完这个方法后,一般我们还需要通过响应这个方法去获取图片
但是,有时候我们会发现用相机拍摄获取照片的时候,得到的 uri 是 null 的,这是因为android把拍摄的图片封装到bundle中传递回来,但是根据不同的机器获得相片的方式不太一样,可能有的相机能够通过
inten.getData()获取到uri
然后再根据uri获取数据的路径,在封装成bitmap,但有时候有的相机获取到的是null的,这时候我们该怎么办呢?
其实这时候我们就应该从bundle中获取数据,通过
(Bitmap) bundle.get("data")
获取到相机图片的bitmap数据。
为了能够同时适应上述两种情况,我们这时候就应该在获取图片时做判断了。我们可以在响应的时候做一个判断:后面的过程就需要通过bitmap转化成相应的图片文件了。不过得到最终的图片是被压缩了的。
这样就能解决照相机取到的图片uri为空的状态了。但是在获取到uri为null情况下,如果想得到没有被压缩过的照片,也就是说得到的是直接从相机拍摄到的照片怎么做呢?
请看下一篇:Android开发之获取相册照片和获取拍照照片二
上一篇文章中讲解了照相机获取照片的时候遇到了可能取得的uri为null的状态,并给出了相应的解决方案,但是那种解决方案得到的图片是压缩过的,如果我们想得到相机拍摄出来的原照片,我们又应该怎样做呢?
其实方式很简单,在
Intent getImageByCamera = new Intent("android.media.action.IMAGE_CAPTURE");
之后我们直接讲文件先保存到指定的路径filepath,然后直接在
onActivityResult(int requestCode, int resultCode, Intent data)
中把filepath传递过去就行了。
这样得到的图片是直接从相机中拍摄得到的照片,不会被压缩了。
0 0
- Android开发之获取相册照片和获取拍照照片
- Android开发之获取相册照片和获取拍照照片
- Android开发之获取相册照片和获取拍照照片
- Android开发之获取相册照片和获取拍照照片
- Android开发之获取相册照片和获取拍照照片
- Android开发之获取相册照片和获取拍照照片
- Android 开发之获取相册照片和获取拍照照片
- Android开发之获取相册照片和获取拍照照片
- Android开发之获取相册照片和获取拍照照片
- Android开发之获取相册照片和获取拍照照片
- Android开发之获取相册照片和获取拍照照片三之 图片旋转
- Android开发之获取相册照片和获取拍照照片二
- 【转】Android开发之获取相册照片和获取拍照照片
- Android开发之获取相册照片和获取拍照照片二
- Android开发之获取相册照片和获取拍照照片二
- Android开发之获取相册照片和获取拍照照片二
- Android开发之获取相册照片和获取拍照照片二
- 获取相册照片和获取拍照照片
- python中的列表(list)详解
- Action访问ServletAPI
- python学习笔记(六)
- AndroidCustomView(投票 ,排名对比图)
- POJ2370【水题】
- Android开发之获取相册照片和获取拍照照片
- 接口
- 静态类,静态方法,静态变量与非静态之间的区别
- UVA 11205 The broken pedometer
- Android开发之仿QQ附近的人搜索展示
- Java的运行路径classpath
- 可变参数
- UVA 10167 Birthday Cake
- 深入理解javascript 执行上下文