android之清理快取實現

2021-09-29 17:42:35 字數 1558 閱讀 3534

一. 清理快取首先要搞清楚清理哪些東西,

二. 搞清楚要清理的資料夾位置

三. 搞起

**功能模組:

獲取某個資料夾的大小,以位元組為單位

把位元組單位換算成常用單位

把快取大小設定到頁面,清理前一次,清理後一次

刪除資料夾功能

/**

*/file videodir,radiodir,filesdir,cachedir;()

/** * 獲取檔案大小(位元組為單位)

* @param dir

* @return

*/private

long

getdirsize

(file dir)if(

!dir.

isdirectory()

)long dirsize =0;

file[

] files = dir.

listfiles()

;for

(file file : files)

else

if(file.

isdirectory()

)}return dirsize;

}/**

* 格式化檔案長度

* @param filesize

* @return

*/private string formatfilesize

(long filesize)

else

if(filesize <

1048576

)else

if(filesize <

1073741824

)else

return filesizestring;

}private

void()

public

void

(final activity activity)

else}}

;new

thread

(new

runnable()

catch

(exception e)

handler.

sendmessage

(msg);}

}).start()

;}/** * 清除快取目錄

* @param dir 目錄

* @param curtime 當前系統時間

*/private

intclearcachefolder

(file dir,

long curtime)

if(child.

lastmodified()

< curtime)}}

}catch

(exception e)

} log.

d(tag,

"clearcachefolder: 清除目錄: "

+dir.

getabsolutepath()

);return deletedfiles;

}

android快取清理

獲取包名的應用快取 在生命週期方法oncreate中先呼叫一次getcachesize packagemanager pm getactivity getpackagemanager listinfos pm.getinstalledpackages 0 for packageinfo info i...

ios 清理快取功能實現

1.計算 沙盒 快取大小 可能是 耗時 操作,放入子執行緒 void viewdidload 獲取 檔案 資料夾 屬性 nsdictionary attrss mgr attributesofitematpath dirpath error nil attrss nslog attrss attrs...

Linux 清理快取,定時清理快取指令碼

檢視記憶體使用率 free m sed n 2p awk 清理記憶體 sync echo 1 proc sys vm drop caches 要達到釋放快取的目的,我們首先需要了解下關鍵的配置檔案 proc sys vm drop caches。這個檔案中記錄了快取釋放的引數,預設值為0,也就是不釋...