Android大图裁剪解决办法
某些功能需要拍照或者从相册选择照片后经过裁剪再上传的时候,
cropp_w_picpath
可以调用手机自带的com.android.camera.action.CROP这个Intent进行裁剪
通过设置输出大小可以得到图片的大小:
intent.putExtra(“outputX”, outputX);
intent.putExtra(“outputY”, outputY);
但是当outputX或者outputY 大小设置为320以上的时候,会发现完全没有效果。
通过搜索才发现了这个问题原来是这样的:
Mobile devices typically have constrained system resources.
Android devices can have as little as 16MB of memory available to a single application.
在Android2.3中,默认的Bitmap为32位,类型是ARGB_8888,
也就意味着一个像素点占用4个字节的内存。3200*2400*4 bytes = 30M。
消耗这样大的内存当然不可能实现。
看看com.android.camera.action.CROP这个Intent可以设置的参数:
data和MediaStore.EXTRA_OUTPUT都是可选的传入数据选项,可以选择设置data为Bitmap,或者将相应的数据与URI关联起来,
你也可以选择是否返回数据(return-data: true)。
使用return Bitmap的话有限制不能太大,那么如果要裁剪大图的话只能使用URI这个参数了。
public Intent getCropImageIntent() {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null);
intent.setType(“p_w_picpath/*”);
intent.putExtra(“crop”, “true”);
intent.putExtra(“aspectX”, 1);
intent.putExtra(“aspectY”, 1);
intent.putExtra(“outputX”, 600);
intent.putExtra(“outputY”, 600);
intent.putExtra(“noFaceDetection”, true);
intent.putExtra(“scale”, true);
intent.putExtra(“return-data”, false);
intent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri);
intent.putExtra(“outputFormat”, Bitmap.CompressFormat.JPEG.toString());
return intent;
}
×××地址:http://06peng.com/archives/192
转载于:https://blog.51cto.com/06peng/1100029
Android大图裁剪解决办法相关推荐
- android 剪切大图,Android大图裁剪解决办法
某些功能需要拍照或者从相册选择照片后经过裁剪再上传的时候, cropp_w_picpath 可以调用手机自带的com.android.camera.action.CROP这个Intent进行裁剪 通过 ...
- Android Bitmap OutOfMemory 解决办法
Android Bitmap OutOfMemory 解决办法 置顶 2014年07月01日 14:41:22 阅读数:3072 标签: OutOfMemoryBitmapandroid图片优化更多 ...
- Android之android.os.NewWorkOnMainThreadException解决办法
1.问题 用别人提供的的sdk的Demo出现android.os.NewWorkOnMainThreadException 2.解决办法 网络请求开启一个线程请求或者开启异步任务都行 3.总结 1. ...
- Android之INSTALL_FAILED_INSUFFICIENT_STORAG解决办法
INSTALL_FAILED_INSUFFICIENT_STORAG 有时候我们项目再次运行的时候,会出现INSTALL_FAILED_INSUFFICIENT_STORAG错误,先翻译下 ...
- Error while obtaining UI hierarchy XML file: com.android.ddmlib.SyncExceptio解决办法
很是奇怪,之前配置好的环境,代码可以运行,但是今天打开就报这个错了: Error while obtaining UI hierarchy XML file: com.android.ddmlib.S ...
- Error:(100, 0) Could not find method android() for arguments 解决办法
大家可能有过这种遭遇,从githu上下载了一个Android studio的工程,却无法在运行,总是出现各种各样的错误,这里笔者遇到了一种错误:Error:(100, 0) Could not fin ...
- android 屏幕关闭 eofexception,android EOFException异常解决办法 (SharedPreferences保存对象)...
SharePreferences可以保存String 但是不能保存对象 这不符合面向对象. 为此可以通过序列化和反序列化将Serializable对象和字符串相互转化 所以可以将Serizlizabl ...
- android.os.networkonmainthredexception,android.os.NetworkOnMainThreadException 解决办法:
产生的原因: 在4.0之后在主线程里面执行Http请求都会报这个错,也许是怕Http请求时间太长造成程序假死的情况 解决办法: 1.在发起Http请求的Activity里面的onCreate函数里面添 ...
- [Android] Bitmap OOM解决办法二
2019独角兽企业重金招聘Python工程师标准>>> 突然出现的Out Of Memory这个BUG导致我们项目中断了好几天,在经过不断地摸索之后,今天终于得到了解决.鉴于其强大的 ...
最新文章
- C++设计模式之策略模式(Strategy)
- Redis HyperLogLog 是什么?这些场景使用它~
- oracle中结果集合并
- Ubuntu与Docker -- Docker安装、使用、容器环境搭建
- ubuntu18.10 编译安装caffe gpu版本
- 机器学习相关职位走向
- 机器人三大定律只是人类的一厢情愿 AI可能并不遵守
- WINRAR5.0破解
- Teams Bot App 代码解析
- OI-wiki 算法基础 模拟 NOIP2014 生活大爆炸版石头剪刀布 python
- RJS 模板的另种用法
- 函数mmap()的使用
- TX2刷机 JetPack4.4
- 颜色识别opencv+trackbar调节目标颜色hsv的阈值
- 浅论人工智能以及朱迪亚·珀尔(Judea Pearl)的因果推理误区 道翰天琼认知智能
- java计算机毕业设计Web企业差旅在线管理系统(附源码、数据库)
- 成功解决:不允许有匹配 “[xX][mM][lL]“ 的处理指令目标。
- Eclipse 进行 web开发的环境配置
- 漫谈广告机制设计 | 从维纳斯的七个香吻说起
- [网鼎杯 2020 朱雀组]phpweb 待续
热门文章
- ASP.NET 2.0 HttpHandler实现生成图片验证码(示例代码下载)
- WMI技术介绍和应用——查询环境变量
- FFmpeg在Windows上设置dshow mjpeg编码+libyuv解码显示测试代码
- 【Qt】QtCreator中配置clang-format
- soul一直显示正在登录聊天服务器,soul这个软件,为什么有些人在玩的时间很久以后(两百天以上),就不会再主动和其他人打招呼了?...
- python字典排序方法_Python字典的排序方法一则
- Java项目:在线旅游系统(java+jsp+SSM+Spring+mysql+maven)
- opencv可以在linux上运行,linux上 安装并 运行opencv
- java并发读取相同的文件_高效读取大文件,再也不用担心 OOM 了!
- c语言最小费用流_策略算法工程师之路-图优化算法(一)(二分图amp;最小费用最大流)...