我的問題是,我從外部存儲中刪除圖像,並且黑色佔位符仍然存在,指的是刪除的圖像位置。從外部存儲刪除圖像後刷新圖庫
這裏是代碼請幫我把它弄出來。
在此先感謝。
String canonicalPath;
try {
canonicalPath = file.getCanonicalPath();
} catch (IOException e) {
canonicalPath = file.getAbsolutePath();
}
final Uri uri = MediaStore.Files.getContentUri("external");
final int result = contentResolver.delete(uri,
MediaStore.Files.FileColumns.DATA + "=?", new String[]{canonicalPath});
if (result == 0) {
final String absolutePath = file.getAbsolutePath();
if (!absolutePath.equals(canonicalPath)) {
contentResolver.delete(uri,
MediaStore.Files.FileColumns.DATA + "=?", new String[]{absolutePath});
}
}
不工作我要送以下路徑作爲字符串這種方法 「/存儲/模擬/0/Pictures/Sticker/stricker1.jpg「 這是正確的嗎? 這個圖像從這個位置刪除。 刪除這張圖片後,我打電話給deleteFromMediaStore()這個方法? –
@Rinkukataria您的設備可能有問題。上面的代碼在一個生產應用程序中,它可以在數千個設備上工作。 – fillobotto
是的,我明白。 matchingIndex.getCount()返回我0. 請告訴我要發送什麼路徑我正在發送/storage/emulated/0/Pictures/Sticker/stricker1.jpg「, File:/// storage/emulated/0 /Pictures/Sticker/stricker1.jpg「 我已經嘗試過這兩個路徑,但它不工作。請給我解釋一下。 –