Android 缓存的使用
缓存基础类
import android.content.Context;
import android.content.SharedPreferences;
public class CacheParam {
/**
得到缓存的值*/
public static boolean getkey(Context context,String key) {
//context.getSharedPreferences第一个参数文件名,第二个是设置访问权限 私有化 仅限本程序访问
SharedPreferences sharedPreferences = context.getSharedPreferences("setting", Context.MODE_PRIVATE);
//第一个参数是key 第二个参数为 找不到key 的时候的默认值
return sharedPreferences.getBoolean(key, false);
}
/**保存缓存值*/
public static void setkey(Context context,String key,boolean defaultvalue)
{
SharedPreferences sharedPreferences = context.getSharedPreferences("setting", Context.MODE_PRIVATE);
sharedPreferences.edit().putBoolean(key,defaultvalue).commit();
}
public static void setkeyforstring(Context context,String key,String string)
{
SharedPreferences sharedPreferences = context.getSharedPreferences("setting", Context.MODE_PRIVATE);
sharedPreferences.edit().putString(key,string).commit();}
public static String getkeyforstring(Context context,String key) {
//context.getSharedPreferences第一个参数文件名,第二个是设置访问权限 私有化 仅限本程序访问
SharedPreferences sharedPreferences = context.getSharedPreferences("setting", Context.MODE_PRIVATE);
//第一个参数是key 第二个参数为 找不到key 的时候的默认值
return sharedPreferences.getString(key, "");
}
public static void clear(Context context) {
SharedPreferences preferences = context.getSharedPreferences("setting", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.clear();editor.commit();
}
}
基础类的调用
void getckpwd() {
if (checkBox.isChecked()) {
String struser = etname.getText().toString();
String strpwd = etpwd.getText().toString();
CacheParam.setkeyforstring(LogInActivity.this, "ischeck", "1");
CacheParam.setkeyforstring(LogInActivity.this, "username", struser);
CacheParam.setkeyforstring(LogInActivity.this, "userpwd", strpwd);
// Toast.makeText(getApplicationContext(), "1", Toast.LENGTH_SHORT).show();
} else {
CacheParam.clear(LogInActivity.this);
// Toast.makeText(getApplicationContext(), "0", Toast.LENGTH_SHORT).show();
}
}
String GetUser, GetPwd, GetCheck;
GetCheck = CacheParam.getkeyforstring(LogInActivity.this, "ischeck");
GetUser = CacheParam.getkeyforstring(LogInActivity.this, "username");
GetPwd = CacheParam.getkeyforstring(LogInActivity.this, "userpwd");
//java中判断字符串是否相同 不能用==
if (GetCheck.equals("1")) {
checkBox.setChecked(true);
if (GetUser != "") {
etname.setText(GetUser);
}
if (GetPwd != "") {
etpwd.setText(GetPwd);
}
} else {
checkBox.setChecked(false);
}
Android 缓存的使用的更多相关文章
- Android 缓存
1.Android缓存机制&一个缓存框架推荐 http://blog.csdn.net/shakespeare001/article/details/51695358 2.ASimpleCac ...
- Android缓存处理
Android缓存: 採用缓存,能够进一步大大缓解数据交互的压力,又能提供一定的离线浏览.下边我简略列举一下缓存管理的适用环境: 1. 提供网络服务的应用 2. 数据更新不须要实时更新.哪怕是3-5分 ...
- android缓存具体解释
Android缓存: 採用缓存,能够进一步大大缓解数据交互的压力.又能提供一定的离线浏览.下边我简略列举一下缓存管理的适用环境: 1. 提供网络服务的应用 2. 数据更新不须要实时更新,哪怕是3-5分 ...
- 【转】彻底解析Android缓存机制——LruCache
彻底解析Android缓存机制——LruCache 关于Android的三级缓存,其中主要的就是内存缓存和硬盘缓存.这两种缓存机制的实现都应用到了LruCache算法,今天我们就从使用到源码解析,来彻 ...
- Android缓存学习入门(二)
本文主要包括以下内容 内存缓存策略 文件缓存策略 内存缓存策略 当有一个图片要去从网络下载的时候,我们并不会直接去从网络下载,因为在这个时代,用户的流量是宝贵的,耗流量的应用是不会得到用户的青睐的.那 ...
- Android缓存学习入门
本文主要包括以下内容 利用LruCache实现内存缓存 利用DiskLruCache实现磁盘缓存 LruCache与DiskLruCache结合实例 利用了缓存机制的瀑布流实例 内存缓存的实现 pub ...
- Android 缓存目录 Context.getExternalFilesDir()和Context.getExternalCacheDir()方法
一.基础知识 应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的.大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中.这样当该应用被卸载 ...
- Android缓存技术
android应用程序中 1. 尽可能的把文件缓存到本地.可以是 memory,cache dir,甚至是放进 SD 卡中(比如大的图片和音视频). 可以设置双重缓冲,较大的图片或者音频放到SD ...
- android 缓存Bitmap - 开发文档翻译
由于本人英文能力实在有限,不足之初敬请谅解 本博客只要没有注明“转”,那么均为原创,转贴请注明本博客链接链接 Loading a single bitmap into your user interf ...
- android缓存之Lrucache 和LinkedHashMap
两者的区别 网上有很多人使用软引用加载图片的多 ,但是现在已经不再推荐使用这种方式了,(1)因为从 Android 2.3 (API Level 9)开始,垃圾回收器会更倾向于回收持有软引用或弱引用的 ...
随机推荐
- python Dom
Dom(Document) 称为:文档对象模型,是一种用于HTML和XML文档的编程接口.它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式.DOM把网页和脚本以及其他的编程语言联系了起 ...
- Docker For Mac 下安装 Rancher
https://www.jianshu.com/p/5fb3e1a998d6 Docker For Mac 下安装 Rancher 原文:如何在 OS X 上安装 Rancher Rancher 是 ...
- 【转载】解决StackOverFlow不能登录的问题
解决StackOverFlow不能登录的问题 原创 2017年04月08日 13:32:21 标签: stack overflow / firefox / 浏览器 今天想着使用谷歌浏览器登录sta ...
- 对RLC重排序窗口大小的一点讨论
在LTE协议栈的PDCP层和RLC层,都有一个重排序窗口(reordering window),主要用来保证数据的可靠传输,PDCP层的重排序窗口主要用于handover时保证数据的可靠传输,这里暂且 ...
- clearstatcache清除文件状态缓存
当使用下列任何函数时stat(),lstat(),file_exists(),is_writable(),is_readable(),is_executable(),is_file(),is_dir( ...
- 百度地图API:使用百度定位
准备工作: 1.申请百度地图API 2.下载百度地图的SDK 3.将SDK包中的BaiduLBS_Android.jar文件放到,项目里的app/libs里面 4.在src/main目录下创建一个名为 ...
- Java入门教程十(抽象类接口内部类匿名类)
抽象类(abstract) 一个类只定义了一个为所有子类共享的一般形式,至于细节则交给每一个子类去实现,这种类没有任何具体的实例,只具有一些抽象的概念,那么这样的类称为抽象类. 在面向对象领域,抽象类 ...
- python3.5以及scrapy,selenium,等 安装
一.python3.5安装和配置 在安装的时候无意间发现了,python3.6没有给我自定义安装的机会,直接就C盘见:因此我选择了python3.5.<安装部分跳过,至于一条吃过痛苦的建议:不要 ...
- Java面试必问之Hashmap底层实现原理(JDK1.7)
1. 前言 Hashmap可以说是Java面试必问的,一般的面试题会问: Hashmap有哪些特性? Hashmap底层实现原理(get\put\resize) Hashmap怎么解决hash冲突? ...
- 开发项目是Integer 与int 什么时候用
什么时候用Integer : 如果该属性所对应的数据库的字段是主键或者是外键时,用Integer:因为Integer的默认值为null,数据库的主键或者外键不能为空,但是可以为null 什么时候用in ...