2011-04-27 77 views
1

我需要刪除保存在我的Android圖庫中的文件(視頻文件)。我用file.delete();.該文件在某些​​設備中被刪除。在一些像Galaxy S這樣的設備中,文件的狀態表明它被刪除,但它仍然存在於畫廊中。但視頻無法播放!如何清除圖片庫的緩存

我發現媒體庫正在對某些預覽/縮略圖進行一些積極的緩存,以便您在那裏看到它,但無法播放 - 因爲底層文件已經消失。如何刪除此緩存?

+0

因此..也許你需要從Gallery Content Provider中刪除關於文件的信息? – 2011-04-27 12:43:27

+0

你可以強制'MediaStore'重新掃描一個目錄:http://stackoverflow.com/questions/3300137/how-can-i-refresh-mediastore-on-android – 2011-04-27 12:45:42

+0

@Igor Khomenko yes。我需要從Galery Content Provider中刪除信息 – includeMe 2011-04-28 13:03:37

回答

2

您可以發送廣播以通過MediaScanner掃描您的圖像/視頻文件。

File f1 = new File("pathToYourFile"); 
Intent scanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); 
scanIntent.setData(Uri.fromFile(f1)); 
sendBroadcast(scanIntent); 

注:刪除文件,將迫使MediaScanner以檢查文件是否存在,以它會檢測該文件不存在更多,同樣會在畫廊反映後發送廣播。

你可以做的下一件事是清除畫廊應用程序的緩存。