清除快取功能

2021-07-25 22:31:24 字數 1848 閱讀 4609

public

class

cachedatamanager

return getformatsize(cachesize);

}public

static

void

clearallcache(context context)

}private

static

boolean

deletedir(file dir) }}

return dir.delete();

}// 獲取檔案

// 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 size

*/public

static string getformatsize(double size)

double megabyte = kilobyte / 1024;

if (megabyte < 1)

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";

}}

在你要顯示的textview上顯示清理前的快取大小,在activity的oncreate()方法中直接設定就好了,其實就是呼叫了上面工具類的gettotalcachesize()方法,有異常,需要捕獲。

try

catch (exception e)

再建立乙個內部類,用於清理記憶體,實現了乙個runnable,清理完後發乙個訊息,這裡可以靈活一點。

class

clearcache

implements

runnable

} catch (exception e)

}}

建立乙個handle接收訊息,處理結果,其實用意是清理完了就彈乙個吐司,清理完成,就是這樣,也可以建立乙個dialog,開始清理的時候顯示,在下面方法關閉,然後再設定一遍textview,就是下面這樣。

private handler handler = new handler()  catch (exception e) }};

};

最後就是在設定監聽的按鈕中呼叫就好了。

new

thread(new clearcache()).start();

給App新增快取功能 清除快取功能

1 寫成檔案,用text或plist檔案進行資料儲存 1.寫乙個工具類,用以獲取檔案的路徑 獲取documents資料夾路徑 return 資料夾路徑 nsstring getdocumentsfolderpath 獲取documents檔案路徑 param filename 檔名稱 return ...

Android獲取快取大小和清除快取功能

拿去可以直接用 一 清除資料都有哪些 1 file 普通檔案儲存,對應路徑 data data com.files 應用內檔案 得到的方法getfiledir 2 database 資料庫檔案 db檔案 對應路徑 data data com.database 應用資料庫 3 shareprefere...

Android APP中清除快取功能詳解

快取資料的統計分2塊 記憶體 這裡指的是應用程式包目錄所在位置 外存 外部儲存卡 清除的目錄包括 1.data data package name files 2.data data package name cache 3.android data cache 4.webview快取資料 計算快取...