安卓开发之使用Acache类对数据进行二级缓存(内存+文件)

Acache类下载地址:http://pan.baidu.com/s/1gfI0A9X

1、创建Acache实例

Acache acache;

acache = Acache.get(this, “main”);

2、将数据保存起来(内存和文件)

acache.put(key,value,time);

前两个无需赘述,键值对,最后一个time,传入int类型,单位为秒,代表缓存存在的时间,超出这个时间,就会清除掉缓存的数据。

3、获取缓存的数据

以一个例子来描述这个问题:

 代码如下 复制代码

public class MainActivity extends Activity {
private ImageView img;
Acache acache;
 
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
acache = Acache.get(this, "main");
img = (ImageView) findViewById(R.id.img);
 
if (acache.getAsBitmap("pic") != null) {
Log.e("acache","正在使用缓存!");
img.setImageBitmap(acache.getAsBitmap("pic"));
} else {
Picasso.with(this).load("http://www.b.hsgjxt.com/image/cache/data/0-100x100.jpg").into(new Target() {
@Override
public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
Log.e("Picasso","正在使用Picasso!");
img.setImageBitmap(bitmap);
acache.put("pic", bitmap, 10);
}
 
@Override
public void onBitmapFailed(Drawable errorDrawable) {
 
}
 
@Override
public void onPrepareLoad(Drawable placeHolderDrawable) {
 
}
});
}
 
}
}

当我第一次进入的时候,控制台打印如下:

开发之使用Acache类对数据进行二级缓存(内存+文件)-primocache二级缓存">
当我立即退出又进去,打印如下:

当我延迟了十秒左右再进去,又提示如下:

这样可以证明缓存可用,并且缓存的时间也有效果。

时间: 2024-07-30 10:53:39

安卓开发之使用Acache类对数据进行二级缓存(内存+文件)的相关文章

eb iew传送数据-安卓开发WebView 向网络端发送数据

问题描述 安卓开发WebView 向网络端发送数据 现在需要用到WebView组件,问题的详细情况是这样的:安卓端需要向网络端发送一条数据(比如用户名),网络端需要用这个用户名来加载特定的内容(不同用户名所需要加载的网页内容不同),并将内容显示在WebView上面,请问WebView如何向网络端发送这条数据? 解决方案 1.页面加载当做参数,你就当WebView是个浏览器2.后台httpurlconnection等方式与服务器端交互. 解决方案二: 你请求一个url,url中带上参数,后台根据参

安卓游戏-安卓开发用sqlite存的游戏数据,游戏卸载后还在吗?

问题描述 安卓开发用sqlite存的游戏数据,游戏卸载后还在吗? 如题,安卓游戏用sqlite存的游戏数据,游戏卸载后sqlite存的数据信息还在吗? 解决方案 android数据存储存放的地方分两种,一种是private,会随着程序的卸载而丢失.另一种是public,共享内容是不会被丢失.而游戏数据应该会保存的服务器端,重新安装的时候会重新保存一遍.当然做法不一样,结果就不一样. 解决方案二: 看你的文件在哪了,如果是随着安装包存在的,就会清理掉,如果是自己拷贝到其他地方的,就没事 解决方案三

安卓开发-使用viewpager listview不显示数据

问题描述 使用viewpager listview不显示数据 大神求解,用viewpager ,有数据但 listview不显示数据,是什么原因???? 解决方案 Android 事务操作和数据显示(ListView的使用) 解决方案二: 什么叫做有数据但listview不显示数据?这样问的太模糊了?是不是listview中adapter还没加进去?当然具体情况不明我这也是乱猜的.

全显示成正数-安卓开发中如何使一个byte类型的数组内的数据不显示成负数

问题描述 安卓开发中如何使一个byte类型的数组内的数据不显示成负数 在做Android开发的时候一个byte类型的数组result,里面有比较大的正数,需要做什么样的处理才能使他显示的全是正数:求大神指导,给个代码 byte[] result for (int i = 0; i < result.length; i++) Log.e("读出全部page", "byte " + i + " is " + result[i]); 解决方案 f

android-现在进行一个类似今日头条的安卓开发,需要在详情页实现类似微信点赞功能,求指导。(有数据同步的)

问题描述 现在进行一个类似今日头条的安卓开发,需要在详情页实现类似微信点赞功能,求指导.(有数据同步的) 现在进行一个类似今日头条的安卓开发,需要在详情页实现类似微信点赞功能,求指导.(有json数据传输的) 解决方案 http://blog.csdn.net/zhaizu/article/details/48103351 解决方案二: android 点赞功能 http://www.apkbus.com/android-173249-1-1.html 解决方案三: http://blog.cs

急,急,急,,,,,安卓开发json数据解析,问题描述如下,我该怎么解决

问题描述 急,急,急,,,,,安卓开发json数据解析,问题描述如下,我该怎么解决 我的json数据是这样的: {"产品1":["件","箱"],"产品2":["台"],"产品3":["包"]} 我需要产品1.产品2.产品3放到一个spinner1里,同时当我选择任何一个spinner1的值时,我的另一个spinner2显示对应spinner1的值的spinner2的

安卓开发获取数据的url

问题描述 安卓开发获取数据的url 请问各位安卓开发 从网上获取数据时 怎么知道url 比如我想开发一个健康食谱 怎么知道他的url借口是多少啊 小白求助 解决方案 Java URL获取数据的方式java 访问url获取数据并解析 解决方案二: 那你得去找市面上有没有开放出来的接口.或者你有这么厉害去反编译相应的APP也能拿到接口

安卓开发常用工具和第三方库汇总

本文讲的是安卓开发常用工具和第三方库汇总,我的名字叫 Ryan Cooke 我在 Pinterest 的核心体验团队工作.今天在这里我会谈论各种 Android 库:它们各自的优点,缺点和其他相关知识.目的是高效地概述尽可能多的库,这样,当你遇到一个问题的时候,你知道这是不是个已经解决的问题?什么样的方案更好?同时也能帮助你避免那些陷阱. 选择正确的库意味着你可以拥有一个已经成熟的更好的解决方案,而不是花费三个月来重新构建它.了解这些库是第一步. 我听到很多人想要实现第一个库, 我们难道不能用

【安卓开发】谁能告诉我像百度贴吧客户端那样的论坛性程序的开发原理是什么

问题描述 [安卓开发]谁能告诉我像百度贴吧客户端那样的论坛性程序的开发原理是什么 谁能告诉我像百度贴吧客户端那样的论坛性程序的开发原理是什么? 目前我们的程序是直接打开一个网页. 1.很多android程序都是界面内包含网页的,但是却有一些标题栏一样的东西,可以控制网页,设置登陆登出等.登出之后,网页的个人信息也随之消失. 2.例如在手机程序里面登陆后,打开程序后,系统就自动存在了个人信息. 或者系统能够获知当前web视图里面加载的是什么网址. 等等等... 我主要想知道的是这类论坛性客户端的开