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();
}
}
}
}

转载于:https://www.cnblogs.com/qiaoxu/p/4613595.html

Android清除本地数据缓存代码相关推荐

  1. android 清理缓存 简书,分享:Android清除本地数据缓存代码

    /**文 件 名:DataCleanManager.java*描述:主要功能有清除内/外缓存,清除数据库,清除sharedPreference,清除files和清除自定义目录*/ importjava ...

  2. iOS - LocalCache 本地数据缓存

    1.自定义方式本地数据缓存 1.1 自定义缓存 1 沙盒路径下的 Library/Caches 用来存放缓存文件,保存从网络下载的请求数据,后续仍然需要继续使用的文件,例如网络下载的离线数据,图片,视 ...

  3. 微信小程序开发:学习笔记[9]——本地数据缓存

    微信小程序开发:学习笔记[9]--本地数据缓存 快速开始 说明 本地数据缓存是小程序存储在当前设备上硬盘上的数据,本地数据缓存有非常多的用途,我们可以利用本地数据缓存来存储用户在小程序上产生的操作,在 ...

  4. 【微信小程序】本地数据缓存

    文章目录 读写本地数据缓存 利用本地缓存提前渲染页面 代码目录 详细代码 前台 后台 利用本地缓存持久化SessionId 读写本地数据缓存 wx.setStorage() wx.getStorage ...

  5. 微信小程序开发:小程序的本地数据缓存

    小程序的本地数据缓存 本地数据缓存,指的是把数据存储在当前设备硬盘上,妥善使用本地数据缓存,可以带来良好的用户体验. 微信小程序提供了同步和异步两组读写本地数据缓存的接口. 读取本地数据 wx.get ...

  6. 快速清除本地DNS缓存

    本地DNS迟迟不生效或者本地dns异常等问题,都会导致访问某些网站出现无法访问的情况,这个时候我们就需要手动清除本地dns缓存,而不是等待! 工具/原料 电脑 方法/步骤 利用快捷键打开[运行窗口], ...

  7. Android之本地数据存储(一):SharedPreferences

    所有的应用程序都必然涉及数据的输入与输出.在Android系统中,主要有五种数据存储模式: 1 . Sharedferences:Sharedferences是一种轻型的数据存储方式,本质上是基于XM ...

  8. ejb构建_如何使用单例EJB,Ehcache和MBean构建和清除参考数据缓存

    ejb构建 在本文中,我将介绍如何使用单例EJB和Ehcache在Java EE中构建简单的参考数据缓存. 高速缓存将在给定的时间段后重置自身,并且可以通过调用REST端点或MBean方法" ...

  9. ejb构建_如何使用单例EJB和MBean构建和清除参考数据缓存

    ejb构建 在我的一个项目中,我需要使用EclipseLink作为ORM框架从Java EE 6 WebLogic环境中的多个源中加载参考数据. 由于我在Java EE世界中找不到与Spring YE ...

最新文章

  1. Matlab ANN人工神经网络 validation checks
  2. ASP程序实现网页伪静态页源代码
  3. time库是python中处理时间的标准库_python语言time库和datetime库基本使用详解
  4. IntelliJ IDEA如何查看接口的实现类以及如何查看被实现的接口
  5. php开发微信图灵机器人
  6. go java jsonrpc_使用golang 实现JSON-RPC2.0
  7. 不确定性原理的前世今生 · 数学篇(一)
  8. Druid连接池简单配置
  9. 电脑没声音解决方法,win11
  10. excel 第4讲:排序与筛选
  11. oracle编程弹框函数,取窗口句柄的api函数
  12. CAN通信----电路图
  13. BLAM源码解析(三)—— 定时器总揽大局
  14. 运营商,我看未必成为夕阳行业
  15. ViewPager、Fragment和TabLayout实现切页效果
  16. Altium DesignerPCB内部走线角度切换 直线切换圆弧
  17. 用正则表达式抓取电话号码
  18. 怎么样使父元素的overflow:hidden不影响到子级absolute绝对定位元素
  19. 正胶显影液/正胶稀释剂/SU8 显影液/RD-HMDS/OMNICOAT光刻胶配套
  20. 化工制造业的ERP解决方案

热门文章

  1. 三角函数和复指数函数的转化_三角函数与复数
  2. python字符串相加_谁说python字符串相加效率低
  3. 青龙面板出现需要409000秒才能登陆,加忘记密码
  4. docker安装消息队列延时插件
  5. python print format_Python中的format格式化输出
  6. python自动接收邮件_Python自动发送和收取邮件的方法
  7. tp5 前台页面获取url链接里的参数,如下
  8. 密码可见_无密码身份认证即将来临
  9. python列表初始化为1_python初始化list列表(1维、2维)
  10. java非法字符检测_Java Web 一些特殊字符的过滤(appscan检查的安全问题)