1,实现效果 

  • 软引用,进行内存缓存,在版本更改后,软引用4.0以后很快会被回收,没有起到缓存的效果

 

 

2,实现逻辑

  • LruCache需要分配一些内存空间,一般是最大内存的/8

package com.xiaoshaui.zhbj96.utils.pic;import android.graphics.Bitmap;import android.support.v4.util.LruCache;public class MemCacheUtils {    LruCache mLruCache;// 存图片    public MemCacheUtils() {        super();        long maxMemory = Runtime.getRuntime().maxMemory();// 当前进程的最大缓存        // Runtime.getRuntime().totalMemory();//当前申请的内存大小        // Runtime.getRuntime().freeMemory();//当前申请的内存 剩余的        // 参1 给缓存分配内存 一般总内存的/8        mLruCache = new LruCache((int) (maxMemory / 8)) {            @Override            protected int sizeOf(String key, Bitmap value) {                int byteCount = value.getByteCount();                System.out.println("byteCount=" + byteCount);                // int byteCount = value.getRowBytes() * value.getHeight();                return byteCount;            }        };    }    public void setCache(String url, Bitmap bimBitmap) {        mLruCache.put(url, bimBitmap);    }    public Bitmap getCache(String url) {        Bitmap bitmap = null;        bitmap = mLruCache.get(url);        return bitmap;    }}

 

 

 

 

更多相关文章

  1. 浅析Context及可能带来的内存泄漏问题
  2. android修改虚拟内存(方法)
  3. Android(安卓)Studio - local path doesn't exist
  4. Handler 引起的内存泄漏
  5. 源码分析--xutil3 网络源码分析
  6. Android(安卓)Studio优化内存配置
  7. Android之内嵌PDF预览
  8. 【Android】Android清除本地数据缓存代码(这些功能很强大不要乱
  9. Handler内存泄露原理及解决方法

随机推荐

  1. Android(安卓)统计图表引擎 AChartEngine
  2. Android单元的Junit测试(快速入门)
  3. Android(安卓)代码画角标 offcutView
  4. Android(安卓)Bluetooth蓝牙名称修改
  5. android 模块化
  6. android获取短信验证码自动填入
  7. android 朗读tts_如何设置Android以大声
  8. Android(CM)源码国内镜像下载
  9. 【Android(安卓)Studio】Android(安卓)St
  10. Android(安卓)Context详解