美文网首页
Android 图片过大导致的OOM异常解决方案

Android 图片过大导致的OOM异常解决方案

作者: HEXG_ | 来源:发表于2017-09-29 09:56 被阅读0次

原文链接:http://www.ytsyt.cn/post/7.html

先转载收藏!

手机的拍照像素越来越高,拍出来的照片效果也会越来越好,但是像素高了照片的容量也就变大了,如果不能处理好bitmap的话很容易导致OOM异常的。以下提供3种解决OOM异常的方案: 

一、bitmap不用就就回收掉 

Java protected void onDestroy() { 

      super.onDestroy();

      if(bmp1 != null){ 

            bmp1.recycle(); 

             bmp1 = null;

        } 

        if(bmp2 != null){

              bmp2.recycle();

              bmp2 = null;

         }

 } 

二、先算出该bitmap的大小,然后通过调节采样率的方式来规避,也就是等比例压缩 

Java BitmapFactory.Options opts = new BitmapFactory.Options(); 

opts.inJustDecodeBounds = true; 

BitmapFactory.decodeFile(imageFile, opts);

 opts.inSampleSize = computeSampleSize(opts, minSideLength, maxNumOfPixels); 

opts.inJustDecodeBounds = false; 

try { 

         return BitmapFactory.decodeFile(imageFile, opts); 

} catch (OutOfMemoryError err) { }

 return null;

 三、在进行文件传输时,最好采用压缩的方式变成byte[]再传输 

Java public static byte[] bitmap2Bytes(Bitmap bm) { 

         ByteArrayOutputStream baos = new ByteArrayOutputStream(); 

         bm.compress(Bitmap.CompressFormat.JPEG, 90, baos); 

         return baos.toByteArray();

 }

相关文章

  • Android 图片过大导致的OOM异常解决方案

    原文链接:http://www.ytsyt.cn/post/7.html 先转载收藏! 手机的拍照像素越来越高,拍...

  • Android加载图片时OOM异常解决办法——Bitmap Op

    在Android里加载图片,通常转换成Bitmap对象,如果图片过大,就会引起OOM异常,所以Android提供了...

  • Android图片处理与缓存

    Android中常常会加载很多图片,但是手机分配给每个应用的内存大小都是有限的,如果图片资源过大会导致OOM现象,...

  • Android内存溢出

    如何避免OOM 1. 图片过大导致OOM(解决方法) 方法1: 等比例缩小图片方法2:对图片采用软引用,及时地进行...

  • Glide

    Glide常用: ////原生加载,图片过大,OOM异常 使用Glide加载 Glide 1.简介 Glide,一...

  • Android:一张图片占用多少内存

    我们在开发Android应用的时候,经常会遇到OOM,加载图片过大,更是在OOM里面占有很大的比重, 那么为什么会...

  • Glide

    Glide常用: //原生加载,图片过大,OOM异常 使用Glide加载 Glide 1.简介 Glide,一个被...

  • Android中Bitmap的高效加载

    为了避免在ImageView中加载的图片过大而导致程序出现OOM的现象,利用BitmapFactory.Optio...

  • 图片大小和内存占用计算

    Android中图片是内存大户,不小心的话就会导致内存浪费,严重的会引起OOM。Android里面展示图片的控件I...

  • Android加载大图和Lrucache 避免oom

    高效加载大图片 (转自)Android高效加载大图、多图解决方案,有效避免程序OOM BitmapFactory这...

网友评论

      本文标题:Android 图片过大导致的OOM异常解决方案

      本文链接:https://www.haomeiwen.com/subject/pwgbextx.html