使用Drawee来显示图片时,发现图片显示不出来,根据打的log发现 "com.facebook.imagepipeline.bitmaps.TooManyBitmapsException"的异常。

开始时根据异常的意思猜测可能打开的图片太多导致的,于是设置fresco的最大缓存大小。

private static int MAX_MEM = 30* ByteConstants.MB;
private ImagePipelineConfig getConfigureCaches(Context context) {final MemoryCacheParams bitmapCacheParams = new MemoryCacheParams(MAX_MEM,// 内存缓存中总图片的最大大小,以字节为单位。
            Integer.MAX_VALUE,// 内存缓存中图片的最大数量。
            MAX_MEM,// 内存缓存中准备清除但尚未被删除的总图片的最大大小,以字节为单位。
            Integer.MAX_VALUE,// 内存缓存中准备清除的总图片的最大数量。
            Integer.MAX_VALUE);// 内存缓存中单个图片的最大大小。

    Supplier<MemoryCacheParams> mSupplierMemoryCacheParams = new Supplier<MemoryCacheParams>() {@Override
        public MemoryCacheParams get() {return bitmapCacheParams;
        }};
    ImagePipelineConfig.Builder builder = ImagePipelineConfig.newBuilder(context);
    builder.setBitmapMemoryCacheParamsSupplier(mSupplierMemoryCacheParams);
    return builder.build();
}                
                 
Fresco.initialize(this,getConfigureCaches(this)); 
                                                                                                  

然而,并没有解决问题。看来这并不是由于缓存了太多图片引起的。百思不得其解之下google了下找的了一个方法,地址如下:

https://github.com/facebook/fresco/issues/213

其中说到了可能是fresco在加载图片时重新定义了大小引起的。只要的当前类中初始化Fresco时添加下边的代码即可。(注意是在当前activity中,不然在Application中可能不起作用)

ImagePipelineConfig config = ImagePipelineConfig.newBuilder(this).setDownsampleEnabled(true).build();
Fresco.initialize(this,config);

问题解决

com.facebook.imagepipeline.bitmaps.TooManyBitmapsException Fresco使用过程中遇到的坑相关推荐

  1. MutipartFile使用过程中遇到的坑

    MutipartFile使用过程中遇到的坑 MutipartFile是spring里面定义的接口,它封装了用户在上传图片时所包含的所有信息,但是有些时候我们要将file转换成MutipartFile, ...

  2. Android studio安装过程中入的坑的记录与记录

    Android studio安装过程中入的坑的记录与记录 * 由于最近项目的需求,所以最近一直在配置安卓的开发环境,之前用的是Eclipse + ADT的模式开发的,配置环境也花了一些时间,但是由于谷 ...

  3. cph = CoxPHFitter()训练过程中遇到的坑以及画图

    画图报错:会报valueError,原因是可能画图软件没有达到指定版本; 解决方案:(1)更新plt,安装最新的到0.17;可能还会需要安装最新的lifelines; DataFrames的画图: 参 ...

  4. postgreSQL与postGIS安装过程中遇到的坑及解决

    记录一下postgreSQL与postGIS安装过程中遇到的坑及解决 写到前面 postgreSQL安装 postgreSQL安装包下载 postgreSQL安装 postGIS的安装 postGIS ...

  5. Python 爬虫中国知网论文过程中遇到的坑及解决办法

    假期,老师给布置了 Python 爬虫中国知网论文的任务,目前实现了登录和搜索功能,先写一下遇到的坑和解决办法吧. Python 爬虫中国知网论文过程中遇到的坑及解决办法 一. selenium 模块 ...

  6. mysql8 my 010457_分享一下我在mysql5.6+mysql8数据库安装过程中的一些坑!

    Mysql5.6安装 下载好安装包后,在bin目录下用cmd打开,输入mysqld install [服务名]新建个服务 在windows+r输入services.msc即可查看服务 怎样使用mysq ...

  7. 在哪里刷题_刷题过程中,这些坑你踩了几个?

    练习卷做了一套又一套,题目刷了一遍又一遍,一考试却发现,分数进步并不大,有些同学甚至没有进步.刷刷刷,为什么分刷不上来?你可能掉进了这些刷题误区--一看就会不少同学在做题的过程中遇到不会的题目的时候, ...

  8. 第一次安装Intellij IDEA过程中遇到的坑

    本人今天一整天都在解决idea的问题,过程虽然很痛苦,但是结果相当美好.接下来一一叙述今天遇到的问题. 下载idea社区版:如果你是有工作经验的开发人员,那么,这个社区版用着相当痛苦,里面有好多插件都 ...

  9. php限制一个函数在几分钟内不被调用_在PHP一句话木马使用过程中的种种坑点分析...

    前言 在平时的学习和练习过程中,经常会遇到上传的一句话木马无法执行我们的命令或者说能执行命令但是不能连接菜刀蚁剑等webshell管理工具,以及各个版本PHP所限制的一些一句话木马的写法,不同版本we ...

最新文章

  1. asp.net 2.0 中GridView里设置日期格式
  2. php入门速成(2),PHP入门速成(1)
  3. c语言打印空心等腰梯形乐学,C语言做激光发射
  4. 前端学习(2815):小程序学习之开发者工具介绍
  5. 隐藏a标签seo_让黑帽都惊了,远离百度惩处的seo技术
  6. java逆向框架,Android逆向之逆向框架层
  7. webservice传递特殊字符时的解决的方法
  8. 2021芜湖高考成绩查询,2021芜湖市地区高考成绩排名查询,芜湖市高考各高中成绩喜报榜单...
  9. NPS 服务器证书:配置模板和自动注册(一)
  10. linux运维生产场景常用软件工具一览
  11. MATLAB代码:计及碳排放交易及多种需求响应的微网/虚拟电厂日前优化调度
  12. JAVA获取word书签内容_java操作word可操作书签
  13. 360手柄摇杆漂移修复_「超逸酷玩」电脑游戏还用在用键盘?不妨试试斯巴达2手柄无线版...
  14. 解决夜神模拟器设置了代理后无法上网
  15. excel转word后表格超出页面_excel表格粘贴到word太宽显示不全怎么办?
  16. 2106_视频处理与压缩技术_中文综述
  17. 【opencv图像处理】--2. 颜色空间,绘制图形,绘制(中文)文本
  18. 杭电1070--喝牛奶
  19. opencv 泊松融合
  20. 程序员的1927年12月31日午夜一秒谜案

热门文章

  1. 年底了,游戏大作连连
  2. SDN控制器策略制定和表项下发—Vecloud
  3. 逻辑网络拓扑与物理网络拓扑—Vecloud微云
  4. Oracle中启动和关闭的各种方式
  5. 前端如何高效的与后端协作开发
  6. 20145317 《网络对抗技术》免杀原理与实践
  7. 基于ARM的GCC编译器,各版本arm-gcc区别与安装
  8. 初学者如何选出最适合自己深度学习框架?
  9. Docker部署配置相关使用总结
  10. usb类调用失败解释