android應用清除應用快取原理

2021-07-09 06:14:57 字數 1636 閱讀 9779

一般需要自己實現兩個api

1.獲取快取大小

2.清除快取

1.清除本應用內部快取(/data/data/com.***.***/cache)
獲取路徑方法:context.getcachedir().getabsolutepath()
2.清除本應用sharedpreference(/data/data/com.***.***/shared_prefs)
context.getfilesdir().getpath() + context.getpackagename() + "/shared_prefs"
3.清除/data/data/com.***.***/files下的內容
獲取路徑方法:

context.getfilesdir()

4.清除外部cache下的內容(/mnt/sdcard/android/data/com.***.***/cache)
獲取路徑方法:

context.getexternalcachedir().getabsolutepath()

5.清除外部files下的內容(/mnt/sdcard/android/data/com.***.***/files)
獲取路徑方法:

context.getexternalfilesdir(null)

6.還有的根據業務是否清除資料庫,資料庫清除全部還是部分資料庫
獲取路徑方法:

context.getdatabasepath("dbname")

7.在指定的資料夾寫的一些業務相關的臨時檔案,考慮是否刪除這些的目錄即目錄中的檔案。
8.系統快取的問題,是存在了cache檔案中,還是在特定的資料夾中。
9.其他(一般應用考慮這些功能基本就實現的差不多了,當然有特定業務的,還有更多更複雜的業務處理)

備註1.以上這些都是資料夾,要用清除資料夾的方法

2.獲取快取大小,其實就是獲取你要刪除這些資料夾的占用檔案系統的空間,在file物件中有相應的方法

3.sd卡上的(這個是判斷判斷有沒有sd卡的快取目錄中的4,5)  environment.getexternalstoragestate().equals(environment.media_mounted)

android清除快取

現在程式中一般都是有快取顯示並且清除快取操作的,那麼具體是怎麼來實現的呢?其實很簡單,乙個utils就搞定了,下面就給大家粘出來 清除快取 param context public static void clearallcache context context private static bo...

android 中清除應用的資料會清除哪些資料

android 中清除應用的資料會清除哪些資料 清除前,用adb 檢視,如下 data data com.ls cache databases files libshared prefs sdcard android data com.ls cache files 清除後,用adb 檢視,如下 da...

android清除快取封裝

time 2017 9 13 09 30 author wen description 清除快取 此方法複製到類中可直接用 public class clearcacheutils catch exception e 獲取快取大小 param context return throws except...