【Bitmap】亲测解决Bitmap出现 decoder->decode returned false 错误
来源:互联网 发布:数据分析师待遇 编辑:程序博客网 时间:2024/05/01 22:17
情景:
今天运营部的同事反馈了一个客户提出的问题,就是原先网络图片加载是没有问题的,但是现在显示不了了。于是追代码,发现服务器返回的json数据没问题,文件用浏览器打开也是没有问题的,很是纳闷,刚开始以为是连接超时,但是呢服务器运行状况是良好的,所以排除了。又想到图片可能是太大了OOM,但是图片是压缩过的返回图片大小也就100K+;终于在控制台被我抓到了
decoder->decode returned false 错误
没错就是它,找到了源头。
解决方案:
参照:
http://stackoverflow.com/questions/4339082/android-decoder-decode-returned-false-for-bitmap-download
代码如下:
public static Bitmap loadImageFromUrl(String url) { URL m; InputStream i = null; BufferedInputStream bis = null; ByteArrayOutputStream out =null; try { m = new URL(url); i = (InputStream) m.getContent(); bis = new BufferedInputStream(i,1024 * 8); out = new ByteArrayOutputStream(); int len=0; byte[] buffer = new byte[1024]; while((len = bis.read(buffer)) != -1){ out.write(buffer, 0, len); } out.close(); bis.close(); } catch (MalformedURLException e1) { e1.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } byte[] data = out.toByteArray(); Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length); //Drawable d = Drawable.createFromStream(i, "src"); return bitmap; }
0 0
- 【Bitmap】亲测解决Bitmap出现 decoder->decode returned false 错误
- --- decoder->decode returned false
- BitmapFactory.decodeStream读取Asset文件出现decoder->decode returned false错误
- --- decoder->decode returned false 解决办法
- (求解答)decoder->decode returned false
- Bitmap decode outof Memory
- Bitmap
- bitmap
- Bitmap
- bitmap
- bitmap
- BitMap
- BITMAP
- Bitmap
- Bitmap
- Bitmap
- Bitmap
- bitmap
- 使用 EclEmma 进行覆盖测试
- Tomcat 初始内存配置、MySQL 的8小时连接失效、Oracle 11g 密码180天过期
- sort函数cmp函数集合
- 保定成为“畿辅节点”背后:习近平亲自推动
- Java反射机制剖析(一)-定义和API
- 【Bitmap】亲测解决Bitmap出现 decoder->decode returned false 错误
- Android - LayoutInflate用法
- Java反射机制剖析(二)-功能以及举例
- socket 的流 不支持reset 不要这样用
- 求表示方法数-递归法
- Java反射机制剖析(三)-简单谈谈动态代理
- Yaf学习笔记之Yaf_View_Simple
- Uva-825 Walking on the Safe Side 水DP
- Java反射机制剖析(四)-深度剖析动态代理原理及总结