缓存基础类

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 缓存的使用的更多相关文章

  1. Android 缓存

    1.Android缓存机制&一个缓存框架推荐 http://blog.csdn.net/shakespeare001/article/details/51695358 2.ASimpleCac ...

  2. Android缓存处理

    Android缓存: 採用缓存,能够进一步大大缓解数据交互的压力,又能提供一定的离线浏览.下边我简略列举一下缓存管理的适用环境: 1. 提供网络服务的应用 2. 数据更新不须要实时更新.哪怕是3-5分 ...

  3. android缓存具体解释

    Android缓存: 採用缓存,能够进一步大大缓解数据交互的压力.又能提供一定的离线浏览.下边我简略列举一下缓存管理的适用环境: 1. 提供网络服务的应用 2. 数据更新不须要实时更新,哪怕是3-5分 ...

  4. 【转】彻底解析Android缓存机制——LruCache

    彻底解析Android缓存机制——LruCache 关于Android的三级缓存,其中主要的就是内存缓存和硬盘缓存.这两种缓存机制的实现都应用到了LruCache算法,今天我们就从使用到源码解析,来彻 ...

  5. Android缓存学习入门(二)

    本文主要包括以下内容 内存缓存策略 文件缓存策略 内存缓存策略 当有一个图片要去从网络下载的时候,我们并不会直接去从网络下载,因为在这个时代,用户的流量是宝贵的,耗流量的应用是不会得到用户的青睐的.那 ...

  6. Android缓存学习入门

    本文主要包括以下内容 利用LruCache实现内存缓存 利用DiskLruCache实现磁盘缓存 LruCache与DiskLruCache结合实例 利用了缓存机制的瀑布流实例 内存缓存的实现 pub ...

  7. Android 缓存目录 Context.getExternalFilesDir()和Context.getExternalCacheDir()方法

    一.基础知识 应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的.大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中.这样当该应用被卸载 ...

  8. Android缓存技术

    android应用程序中 1. 尽可能的把文件缓存到本地.可以是 memory,cache dir,甚至是放进 SD 卡中(比如大的图片和音视频).    可以设置双重缓冲,较大的图片或者音频放到SD ...

  9. android 缓存Bitmap - 开发文档翻译

    由于本人英文能力实在有限,不足之初敬请谅解 本博客只要没有注明“转”,那么均为原创,转贴请注明本博客链接链接 Loading a single bitmap into your user interf ...

  10. android缓存之Lrucache 和LinkedHashMap

    两者的区别 网上有很多人使用软引用加载图片的多 ,但是现在已经不再推荐使用这种方式了,(1)因为从 Android 2.3 (API Level 9)开始,垃圾回收器会更倾向于回收持有软引用或弱引用的 ...

随机推荐

  1. Ubuntu上搭建GPU服务器

    1.安装显卡驱动 2.安装CUDA 3.安装cuDNN 下载: 根据显卡类型以及操作系统,选定CUDA版本和语言设置,下载对应的显卡驱动. 驱动下载地址 安装 $ sudo ./NVIDIA-Linu ...

  2. 复合文字(Compound Literals)

    复合文字(Compound Literals) 阅读代码时发现了这行 1 setsockopt(sock,SOL_SOCKET,SO_REUSEADDR,&(int){1},sizeof(in ...

  3. phaser2->3:来个打地鼠试水

    本文中phaser具体版本 phaser2:2.8.1 phaser3:3.17.0 一.实现效果二.实现细节三.项目总结四.参考文档 一.实现效果 源码地址(phaser2&phaser3) ...

  4. YCSB项目学习

    主要总结Yahoo的数据库测试项目YCSB的使用(针对redis). github网址:https://github.com/brianfrankcooper/YCSB 需要安装 java maven ...

  5. Spring Boot 2.x基础教程:使用 Thymeleaf开发Web页面

    通过本系列教程的前几章内容(API开发.数据访问).我们已经具备完成一个涵盖数据存储.提供HTTP接口的完整后端服务了.依托这些技能,我们已经可以配合前端开发人员,一起来完成一些前后端分离的Web项目 ...

  6. 【原创】面试官问我G1回收器怎么知道你是什么时候的垃圾?

    这是why技术的第36篇原创文章 上面的图片是我上周末在家拍的.以后的文章里面我的第一张配图都用自己随手拍下的照片吧.分享生活,分享技术,哈哈. 阳台上的花开了,成都的春天快来了,疫情也应该快要过去了 ...

  7. 达拉草201771010105《面向对象程序设计(java)》第四周学习总结

    实验四类与对象的定义及使用 实验时间 2018-9-20 第一部分:理论知识 1.类与对象概念 (1)类是具有相同属性和方法的一类事物的抽象,是构造对象的模板或蓝图,由类构造对象的过程称为创建类的实例 ...

  8. 利用canvas绘画二级树形结构图

    上周需要做一个把页面左侧列表内容拖拽到右侧区域,并且绘制成关系树的功能.看了设计图,第一反应是用canvas绘制关系线.吭哧吭哧搞定这个功能后,发现用canvas绘图,有一个很严重的缺陷.那就是如果左 ...

  9. Slog27_支配vue框架初阶项目之博客网站-样式居中

    ArthurSlog SLog-27 Year·1 Guangzhou·China July 30th 2018 GitHub 掘金主页 简书主页 segmentfault 没有写够足够的代码量,想成 ...

  10. 如何开发和发布一个Vue插件

    前言 Vue 项目开发过程中,经常用到插件,比如原生插件 vue-router.vuex,还有 element-ui 提供的 notify.message 等等.这些插件让我们的开发变得更简单更高效. ...