拿去可以直接用
一、清除資料都有哪些
1、file-普通檔案儲存,對應路徑 /data/data/com.***.***/files-應用內檔案(得到的方法getfiledir())
2、database-資料庫檔案(.db檔案) 對應路徑 /data/data/com.***.***/database-應用資料庫
3、sharepreference-配置資料(.xml檔案) 對應路徑 /data/data/com.***.***/shared_prefs -應用內配置檔案
4、cache-快取 對應路徑 /data/data/com.***.***/cache -應用內快取(得到的方法 getcachedir())
二、應以內清除快取
/*** 應用資料清除管理器
*/public class datacleanmanager
/*** * 清除本應用所有資料庫(/data/data/com.***.***/databases) * ***
@param
context
*/public static void
cleandatabases(context context)
/*** * 清除本應用sharedpreference(/data/data/com.***.***/shared_prefs) ***
@param
context
*/public static void
cleansharedpreference(context context)
/*** * 按名字清除本應用資料庫 * ***
@param
context
* @param
dbname
*/public static void
cleandatabasebyname(context context, string dbname)
/*** * 清除/data/data/com.***.***/files下的內容 * ***
@param
context
*/public static void
cleanfiles(context context)
/*** * 清除外部cache下的內容(/mnt/sdcard/android/data/com.***.***/cache)**
@param
context
*/public static void
cleanexternalcache(context context)
}/**
* * 清除自定義路徑下的檔案,使用需小心,請不要誤刪。而且只支援目錄下的檔案刪除 * ***
@param
filepath
*/public static void
cleancustomcache(string filepath)
/*** * 清除本應用所有的資料 * ***
@param
context
* @param
filepath
*/public static void
cleaninternalcache(context);
cleanexternalcache(context);
cleandatabases(context);
cleansharedpreference(context);
cleanfiles(context);
if (filepath == null)
for (string filepath : filepath)
}/**
* * 刪除方法 這裡只會刪除某個資料夾下的檔案,如果傳入的directory是個檔案,將不做處理 * ***
@param
directory
*/private static void
deletefilesbydirectory(file directory) }}
// 獲取檔案
// context.getexternalfilesdir() --> sdcard/android/data/你的應用的包名/files/
// 目錄,一般放一些長時間儲存的資料
// context.getexternalcachedir() -->
// sdcard/android/data/你的應用包名/cache/目錄,一般存放臨時快取資料
public static long
getfoldersize(file file) throws exception else
}} catch (exception e)
return size;
} /**
* 刪除指定目錄下檔案及目錄**
@param
deletethispath
* @param
filepath
* @return
*/public static void
deletefolderfile(string filepath, boolean deletethispath)
}if (deletethispath) else }}
} catch (exception e) }}
/*** 格式化單位**
@param
size
* @return
*/public static string getformatsize(double size)
double gigabyte = megabyte / 1024
;if (gigabyte < 1)
double terabytes = gigabyte / 1024
;if (terabytes < 1)
bigdecimal result4 = new bigdecimal(terabytes);
return result4.setscale(2
, bigdecimal.round_half_up).toplainstring() + "tb";}
public static string getcachesize(file file) throws exception
}
Android獲取螢幕大小
我們在做ui開發通常都會有這樣的需求,取得畫面的大小,以下這段 就能幫你在android平台中取得畫面的大小,如下 1.display display getwindowmanager getdefaultdisplay 2.log.i view height display.getheight 3...
Glide獲取快取大小以及清除快取
compile com.github.bumptech.glide glide 3.7.0 呼叫工具類獲取快取大小 string cachesize glidecacheutil.getinstance getcachesize this clean.settext cachesize dingwe...
Android獲取控制項的大小
有時候我們需要獲得控制項的大小,但是在activity的oncreate 生命週期方法中呼叫getwidth 和getheight 方法並不能獲得控制項的寬和高,因為此時我們的介面並未被繪製完成。不過我們卻可以在onwindowfocuschanged boolean hasfocus 這個方法中獲...