android 加载网络图片,并压缩bitmap内存大小
/*** 根据图片的url路径获得Bitmap对象, 有压缩效果的,占用内存小了,* @param url* @return*/public static Bitmap returnBitmap(String url) {URL fileUrl = null;Bitmap bitmap = null;try {fileUrl = new URL(url);} catch (MalformedURLException e) {e.printStackTrace();}try {HttpURLConnection conn = (HttpURLConnection) fileUrl.openConnection();conn.setDoInput(true);conn.connect();//-------------------------------------------------------------------- rhj add 20200106BitmapFactory.Options options = new BitmapFactory.Options();options.inSampleSize = 4; //压缩占用内存大小, 采样率压缩,,把图片尺寸缩小了 可以缩小20倍左右内存options.inPreferredConfig = Bitmap.Config.RGB_565; // 色彩值压缩。压缩占用内存大小 可缩小一半内存//-------------------------------------------------------------------- rhj add 20200106InputStream is = conn.getInputStream(); // bitmap = BitmapFactory.decodeStream(is); // 旧的无参数配置的流,不压缩处理//-------------------------------------------------------------------- rhj add 20200106bitmap = BitmapFactory.decodeStream(is,null,options); //// // 查看bitmap大小 rhj add 20200106LogUtil.e(TAG,"第一次压缩,options配置压缩,returnBitmap() 图片bitmap size(K) 2222: "+ BitmapUtil.getBitmapSize(bitmap) + " K ,,size(M): "+ BitmapUtil.getBitmapSize(bitmap)/1024 + "M");// // 查看bitmap大小 rhj add 20200106 // LogUtil.e(TAG,"第二次压缩,compress压缩,returnBitmap() 图片bitmap size(K) 2222: " // + BitmapUtil.getBitmapSize(bitmap) + " K ,,size(M): " // + BitmapUtil.getBitmapSize(bitmap)/1024 + "M");//-------------------------------------------------------------------- rhj add 20200106is.close();return bitmap;} catch (Exception e) {e.printStackTrace();}return bitmap;}
/*** 获取 Bitmap 的大小*/ public static int getBitmapSize(Bitmap bitmap) {if (bitmap == null){return 0;}if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { //API 19return bitmap.getAllocationByteCount() / 1024; //k}if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR1) {//API 12return bitmap.getByteCount() / 1024; //k}// 其他版本return bitmap 的大小return bitmap.getRowBytes() * bitmap.getHeight() / 1024; //k //earlier version }
android 加载网络图片,并压缩bitmap内存大小相关推荐
- Android加载网络图片学习过程
好多应用,像我们公司的<乘友>还有其他的<飞鸽><陌陌><啪啪>这些,几乎每一款应用都需要加载网络图片,那ToYueXinShangWan,这是比须熟练 ...
- android显示多个网络图片,Android加载网络图片并显示占位图
我们使用glide来实现ImageView加载网络图片的功能,首先引入依赖包 implementation "com.github.bumptech.glide:glide:3.7.0&qu ...
- Android Volley完全解析2:使用Volley加载网络图片
原文链接:http://blog.csdn.net/guolin_blog/article/details/17482165,CSDN 郭霖 在上一篇文章中,我们了解了Volley到底是什么,以及它的 ...
- Android Volley完全解析(二),使用Volley加载网络图片 转载:http://blog.csdn.net/guolin_blog/article/details/174
转载:http://blog.csdn.net/guolin_blog/article/details/17482165 在上一篇文章中,我们了解了Volley到底是什么,以及它的基本用法.本篇文章中 ...
- android imageview 设置网络图片,ImageView加载网络图片
android网络加载图片框架Android-Universal-Image-Loader功能非常强大,其开源地址https://github.com/nostra13/Android-Univers ...
- android加载大量图片内存优化,Android图片加载内存优化
利用BitmapFactory.Options实现图片内存优化 通过设置options.inPreferredConfig控制内存占用 首先准备了一张1280x800的blue_bg.png图片,我们 ...
- android 图片加载 软引用_Android 异步加载网络图片并缓存到本地 软引用 学习分享(转)...
迪 王. 于 星期四, 20/02/2014 - 21:36 提交 在android应用开发的时候,加载网络图片是一个非常重要的部分,很多图片不可能放在本地,所以就必须要从服务器或者网络读取图片. 软 ...
- Android加载图片内存溢出问题解决方法
这篇文章主要介绍了Android加载图片内存溢出问题解决方法,本文讲解使用BitmapFactory.Options解决内存溢出问题,需要的朋友可以参考下 1. 在Android软件开发过程中,图片处 ...
- Universal-Image-Loader,android-Volley,Picasso、Fresco和Glide五大Android开源组件加载网络图片的优缺点比较
在android中的加载网络图片是一件十分令人头疼的事情,在网上有着许多关于加载网络图片的开源库,可以让我们十分方便的加载网络图片.在这里我主要介绍一下我自己在使用Volley, Picasso, U ...
最新文章
- Arthritis Rheumatology:张烜+王军发表系统性红斑狼疮患者的肠道菌群变化
- 2020年中国智慧城市发展值得关注的技术
- 【C11】float
- RHEL6.3配置文件共享(3) Samba服务之一
- 【DP】和谐的奶牛(jzoj 1750)
- 苹果电脑 Mac OS X 系统诞生的故事和发展历史
- 【个人笔记】《知了堂》node.js简介及创建应用
- ITIL 4 讲解:事件管理 (Incident Management)
- 华为android手机root,华为手机怎么root
- 用户画像及项目实例:电商用户画像
- 色彩对比广告设计_为什么我们都需要使用色彩对比检查器
- 2.10 MapReduce文件合并
- 逆火软件测试工资,世界级人体工学设计:HyperX Pulsefire FPS逆火鼠标评测
- 真!一文搞定 HTTP 和 HTTPS
- Linux音乐相册代码,小年糕音乐相册制作下载-小年糕视频编辑appv1.5.8-Linux公社
- 给我写信 wyz831201王玉镇
- 按群计数10以内_按数群计数教案
- 大一计算机专业学期计划范文,大一学期的个人学习计划范文(精选5篇)
- 超级机器人大战A(GBA)帅气攻略(3)
- verify_area