[英]How to Delete files in /data/data/providers/downloads/cache on Android
我想創建和刪除位於/數據/數據/供應商/下載/緩存一些文件。 到目前為止,我可以下載目標文件並成功保存在/ data / data / providers / downloads / cache中,但是當我嘗試刪除/ data / data / providers / downloads / cache中的文件時,它最終將失敗。 我的方法如下
File directory = new File("/data/data/providers/downloads/cache");
File[] files = directory.listFiles();
我想列出的所有文件,這樣我就可以找到目標文件需要被刪除。 我發現listFiles()方法始終返回NULL,所以我的問題是,我可以對目錄/ data / data / providers / downloads / cache使用listFile()嗎?
任何理想都受到歡迎。
BR艾倫
我使用這種方法:當我想刪除包括目錄的所有文件時。
static public boolean deleteDirectory(File path) {
if( path.exists() ) {
File[] files = path.listFiles();
if (files == null) {
return true;
}
for(int i = 0; i < files.length; i++) {
if(files[i].isDirectory()) {
deleteDirectory(files[i]);
}
else {
files[i].delete();
}
Log.d("Deleting Files", files[i].getPath());
}
}
return( path.delete() );
}
但是android有自己可以使用的清除緩存方法,但是它需要您將內容實際保存到緩存中。 問題可能是您從未添加任何內容,而您僅具有清除自己的緩存的權限?
我該如何利用Android的“清除緩存”按鈕來討論問題:)
祝好運
編輯:另外,您確定文件路徑正確嗎? 您可以使用
Environment.getDownloadCacheDirectory()
為了找到緩存的根目錄,我認為呢?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.