【Android】BitmapFactory.Options内存溢出
1、OOM(Out Of Memory) 就是内存溢出。
java.lang.OutOfMemoryError: Failed to allocate a 6741804 byte allocation with 200220 free bytes and 195KB until OOM

2、Uri originalUri;
ContentResolver resolver = mContext.getContentResolver();
Bitmap bitmap =
MediaStore.Images.Media.getBitmap(resolver,originalUri);

3、进入手机【图库】代码方法如下
Intent intent=new Intent(Intent.ACTION_GET_CONTENT);intent.addCategory(Intent.CATEGORY_OPENABLE);intent.setType("image/*");startActivityForResult(intent, CHOOSE_PICTURE);
返回到onActivityResult进行处理

4、这个方法的确可以用,但是出现了一个很无语的事情。
(大图片内存溢出,上面的方法设置了缓冲区,但是是系统分配,不能设置大小。超过3M左右就容易报错。)
也是要感叹现在手机厉害,随便一个图片拍出来就接近3M左右了。

5、解决这个问题的方法
通过以下代码获取,图片路径。

6、获取本地自定义图片
BitmapFactory.Options opts=new BitmapFactory.Options();

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:178
阅读量:172
阅读量:94
阅读量:64
阅读量:105