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)开始,垃圾回收器会更倾向于回收持有软引用或弱引用的 ...
随机推荐
- Ubuntu上搭建GPU服务器
1.安装显卡驱动 2.安装CUDA 3.安装cuDNN 下载: 根据显卡类型以及操作系统,选定CUDA版本和语言设置,下载对应的显卡驱动. 驱动下载地址 安装 $ sudo ./NVIDIA-Linu ...
- 复合文字(Compound Literals)
复合文字(Compound Literals) 阅读代码时发现了这行 1 setsockopt(sock,SOL_SOCKET,SO_REUSEADDR,&(int){1},sizeof(in ...
- phaser2->3:来个打地鼠试水
本文中phaser具体版本 phaser2:2.8.1 phaser3:3.17.0 一.实现效果二.实现细节三.项目总结四.参考文档 一.实现效果 源码地址(phaser2&phaser3) ...
- YCSB项目学习
主要总结Yahoo的数据库测试项目YCSB的使用(针对redis). github网址:https://github.com/brianfrankcooper/YCSB 需要安装 java maven ...
- Spring Boot 2.x基础教程:使用 Thymeleaf开发Web页面
通过本系列教程的前几章内容(API开发.数据访问).我们已经具备完成一个涵盖数据存储.提供HTTP接口的完整后端服务了.依托这些技能,我们已经可以配合前端开发人员,一起来完成一些前后端分离的Web项目 ...
- 【原创】面试官问我G1回收器怎么知道你是什么时候的垃圾?
这是why技术的第36篇原创文章 上面的图片是我上周末在家拍的.以后的文章里面我的第一张配图都用自己随手拍下的照片吧.分享生活,分享技术,哈哈. 阳台上的花开了,成都的春天快来了,疫情也应该快要过去了 ...
- 达拉草201771010105《面向对象程序设计(java)》第四周学习总结
实验四类与对象的定义及使用 实验时间 2018-9-20 第一部分:理论知识 1.类与对象概念 (1)类是具有相同属性和方法的一类事物的抽象,是构造对象的模板或蓝图,由类构造对象的过程称为创建类的实例 ...
- 利用canvas绘画二级树形结构图
上周需要做一个把页面左侧列表内容拖拽到右侧区域,并且绘制成关系树的功能.看了设计图,第一反应是用canvas绘制关系线.吭哧吭哧搞定这个功能后,发现用canvas绘图,有一个很严重的缺陷.那就是如果左 ...
- Slog27_支配vue框架初阶项目之博客网站-样式居中
ArthurSlog SLog-27 Year·1 Guangzhou·China July 30th 2018 GitHub 掘金主页 简书主页 segmentfault 没有写够足够的代码量,想成 ...
- 如何开发和发布一个Vue插件
前言 Vue 项目开发过程中,经常用到插件,比如原生插件 vue-router.vuex,还有 element-ui 提供的 notify.message 等等.这些插件让我们的开发变得更简单更高效. ...