首页 > 代码库 > Android http 请求 Json数据缓存到内存

Android http 请求 Json数据缓存到内存

package com.innjoo.store.cache;
import com.ferris.utils.StringUtils;
import android.support.v4.util.LruCache;
/**
 * 
 * @ClassName: LruJsonCache json缓存类
 * @Description: TODO
 * @author 重播
 * @email 459821731@qq.com
 * @date 2014-12-27 下午5:33:49
 * @csdn blog.csdn.net/xufeifandj
 */
public class LruJsonCache {
	private LruCache<String, String> mMemoryCache;

	public LruJsonCache() {
		int maxMemory = (int) Runtime.getRuntime().maxMemory() / 10;
		mMemoryCache = new LruCache<String, String>(maxMemory) {
			@Override
			protected int sizeOf(String key, String value) {
				return value.length();
			}
		};
	}

	/**
	 * 
	 * @Title: addJsonToMemoryCache
	 * @Description: TODO 添加json内存
	 * @return void
	 */
	public void addJsonToMemoryCache(String key, String jsonString) {
		if (mMemoryCache == null) {
			return;
		}
		if (StringUtils.isEmpty(key)) {
			return;
		}

		if (getJsonFromMemCache(key) == null && jsonString != null) {
			mMemoryCache.put(key, jsonString);
		}
	}

	/**
	 * 从内存缓存中获取一个Json
	 * @param key
	 * @return
	 */
	public String getJsonFromMemCache(String key) {
		if (mMemoryCache == null) {
			return null;
		}
		return mMemoryCache.get(key);
	}
}


Android http 请求 Json数据缓存到内存