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”,图中 ...
随机推荐
- 免费的手机号码归属地查询API接口文档
聚合数据手机号码归属四查询API接口,根据手机号码或手机号码的前7位,查询手机号码归属地信息,包括省份 .城市.区号.邮编.运营商和卡类型. 通过链接https://www.juhe.cn/docs/ ...
- HDU-1037(水水水题)
Keep on Truckin' Problem Description Boudreaux and Thibodeaux are on the road again . . . "Boud ...
- HTML+CSS基础学习笔记(5)
一.文字排版--字体 Eg: body{font-family:"宋体";} body{font-family:"Microsoft Yahei";}//微软雅 ...
- shit-------------mysql没有full join 语句
弄了好久,结果发现-------- 因为mysql没有full join这个东西 你只能写成 sleect * from A left join B on A.id=B.idunionselect * ...
- DBNull与Null
DBNull与Null的区别在于,DBNull代表该字段在数据库中根本不存在,Null代表该字段在数据库中没有值.
- C#中的委托范例学习
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Cons ...
- Cocos2d-x 学习资料收集
框架源代码: http://code.google.com/p/cocos2d-x/downloads/list 搭建环境 http://blog.csdn.net/ccf19881030/artic ...
- C# 控制台程序 托盘图标 事件响应
static void Main(string[] args) { NotifyIconHelper ni = new NotifyIconHelper(); NotifyIconHelper.Sho ...
- 自己学习过程中关于以后有可能用到的技术的备份,微信广告滑屏组件 iSlider
转载: iSlider 是个非常平滑的滑块,支持移动端 WebApp,HTML5App 和混合型的 App. iSlider是移动端的滑动组件的最佳解决方案.他和普通的web 端的滑动插件有很大不同, ...
- 【FJOI2014】【偏导+数学】病毒防护带
转载:http://trinklee.blog.163.com/blog/static/23815806020150155296528/ 问题描述: 众所周知,在国王胖哥的带领下,K国国泰民安,空前繁 ...