Android清除本地数据缓存代码
- /* * 文 件 名: DataCleanManager.java * 描 述: 主要功能有清除内/外缓存,清除数据库,清除sharedPreference,清除files和清除自定义目录 */
- package com.test.DataClean;
- import java.io.File;
- import android.content.Context;
- import android.os.Environment;
- /** * 本应用数据清除管理器 */
- public class DataCleanManager {
- /** * 清除本应用内部缓存(/data/data/com.xxx.xxx/cache) * * @param context */
- public static void cleanInternalCache(Context context) {
- deleteFilesByDirectory(context.getCacheDir());
- }
- /** * 清除本应用所有数据库(/data/data/com.xxx.xxx/databases) * * @param context */
- public static void cleanDatabases(Context context) {
- deleteFilesByDirectory(new File("/data/data/" + context.getPackageName() + "/databases"));
- }
- /** * 清除本应用SharedPreference(/data/data/com.xxx.xxx/shared_prefs) * * @param context */
- public static void cleanSharedPreference(Context context) {
- deleteFilesByDirectory(new File("/data/data/" + context.getPackageName() + "/shared_prefs"));
- }
- /** * 按名字清除本应用数据库 * * @param context * @param dbName */
- public static void cleanDatabaseByName(Context context, String dbName) { context.deleteDatabase(dbName);
- }
- /** * 清除/data/data/com.xxx.xxx/files下的内容 * * @param context */
- public static void cleanFiles(Context context) {
- deleteFilesByDirectory(context.getFilesDir());
- }
- /** * 清除外部cache下的内容(/mnt/sdcard/android/data/com.xxx.xxx/cache) * * @param context */
- public static void cleanExternalCache(Context context) {
- if (Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED)) {
- deleteFilesByDirectory(context.getExternalCacheDir());
- }
- }
- /** * 清除自定义路径下的文件,使用需小心,请不要误删。而且只支持目录下的文件删除 * * @param filePath */
- public static void cleanCustomCache(String filePath) {
- deleteFilesByDirectory(new File(filePath));
- }
- /** * 清除本应用所有的数据 * * @param context * @param filepath */
- public static void cleanApplicationData(Context context, String... filepath) {
- cleanInternalCache(context);
- cleanExternalCache(context);
- cleanDatabases(context);
- cleanSharedPreference(context);
- cleanFiles(context);
- for (String filePath : filepath) {
- cleanCustomCache(filePath);
- }
- }
- /** * 删除方法 这里只会删除某个文件夹下的文件,如果传入的directory是个文件,将不做处理 * * @param directory */
- private static void deleteFilesByDirectory(File directory) {
- if (directory != null && directory.exists() && directory.isDirectory()) {
- for (File item : directory.listFiles()) {
- item.delete();
- }
- }
- }
- }
本文转自:http://mobile.51cto.com/abased-401823.htm
Android清除本地数据缓存代码的更多相关文章
- Android清除本地数据缓存代码案例
Android清除本地数据缓存代码案例 直接上代码: /* * 文 件 名: DataCleanManager.java * 描 述: 主要功能有清除内/外缓存,清除数据库,清除shar ...
- 【Android】Android清除本地数据缓存代码
最近做软件的时候,遇到了缓存的问题,在网上看到了这个文章,感觉不错.分享给大家看看 文章出处:http://www.cnblogs.com/rayray/p/3413673.html /* * 文 件 ...
- iOS - LocalCache 本地数据缓存
1.自定义方式本地数据缓存 1.1 自定义缓存 1 沙盒路径下的 Library/Caches 用来存放缓存文件,保存从网络下载的请求数据,后续仍然需要继续使用的文件,例如网络下载的离线数据,图片,视 ...
- 微信小程序开发:学习笔记[9]——本地数据缓存
微信小程序开发:学习笔记[9]——本地数据缓存 快速开始 说明 本地数据缓存是小程序存储在当前设备上硬盘上的数据,本地数据缓存有非常多的用途,我们可以利用本地数据缓存来存储用户在小程序上产生的操作,在 ...
- 如何清除本地DNS缓存 windows
在您的网站迁移服务器时需要对域名所指向的IP进行更改,这时候在本机访问网站时就需要清除本地的DNS缓存信息,那么怎样清除呢? 首先我们应该明白清除DNS缓存信息的原理:当计算机对域名访问时并不是每次访 ...
- 使用SQLite做本地数据缓存的思考
前言 在一个分布式缓存遍地都是的环境下,还讲本地缓存,感觉有点out了啊!可能大家看到标题,就没有想继续看下去的欲望了吧.但是,本地缓存的重要性也是有的! 本地缓存相比分布式缓存确实是比较out和比较 ...
- Vista/Win7以上系统查看和清除本地DNS缓存新方法
你是否因修改网站DNS解析后,却因本机DNS缓存而需要等待... 你是否遇到修改了本机的hosts文件后,必须重起firefox和ie才起作用... 其实只要清空DNS缓存这些问题都可以解决. 查看D ...
- Android 清除本地缓存
主要功能:清除内.外缓存,清除数据库,清除Sharepreference,清除files和清除自定义目录 public class DataCleanManager { //清除本应用内部缓存(/da ...
- [2]项目创建-使用C#.NET开发基于本地数据缓存的PC客户端
1.新建项目->已安装->模板->Visual c#->Windows桌面->Windows窗体应用程序,截图如下: 图中1:输入项目名称-“MoneyNotes”,图中 ...
随机推荐
- RedHat7配置IdM server
IdM服务器是一个集成身份验证服务器. Figure 1.1. The IdM Server: Unifying Services Authentication: Kerberos KDC Kerbe ...
- ThinkPHP的数据库访问的简单操作
传统的sql与ThinkPHP中的sql相比较 以user表为例 $user=M('user'); 1: SELECT * FROM user----------$user->select( ...
- jQuery Ajax 实例 全解析
jQuery确实是一个挺好的轻量级的JS框架,能帮助我们快速的开发JS应用,并在一定程度上改变了我们写JavaScript代码的习惯. 废话少说,直接进入正题,我们先来看一些简单的方法,这些方法都是 ...
- 在Abp框架中使用Mysql数据库的方法以及相关问题小记
最近发现了一款DDD的框架 看起来不错,据说挺流弊的 刚好最近要弄点小东西,拿来试试也不错 苦于穷逼买不起高配服务器,只好装mysql数据库了 下面说下如何在该框架下使用Mysql数据库 打开项目后, ...
- a标签的简单用法
1.href="#"的作用:页面中有滚动,可以直接回到顶部. <a href="#">回到最顶端</a> 2.href="ur ...
- vsftpd服务安装,配置,限制目录
一.下载版本:vsftpd-2.0.5-16.el5_4.1.i386.rpm 二.安装:rpm -ivh vsftpd-2.0.5-16.el5_4.1.i386.rpm 三.配置: vsftpd. ...
- mac管理员密码破解
方法一:官方解决方法.找出电脑原配的系统盘,找不到就借一张或者刻录一张,重启电脑,启动的时候按C键,选好语言后进入安装的时候,点击“常用工具”,里面有一项是“重设密码”,这时就可以重新设定Mac OS ...
- DevExpress XtraGrid RepositoryItemCheckEdit 复选框多选的解决方法
1. RepositoryItemCheckEdit默认有三种状态,选中状态.未选中状态和半选中状态(半选中状态通常用在TreeList中如果父节点下的子节点有选中的有未选中的,则父节点状态为半选中状 ...
- vs2013 使用vs调试器,发现调试器显示的数据错误。查看内存,发现内存是正确的。
有可能只是调试器的问题,程序可以正常运行的! 网上没找到此种情况解释.感觉有可能是那里堆被破坏了.
- thinkphp框架使用心得
接触的第一个PHP框架就是TP,在使用的了一段时间后就放弃了,说实话TP的弊端挺多,之后又接触laravel框架,慢慢的就爱上laravel这个框架了.这段时间由于公司的原因,又不得不使用thinkp ...