Android删除图片

1,407 阅读1分钟

一般我们会直接找到这个图片的地址然后删掉他就像这样

//删SD卡中的图片
File f =new File(path)
f.delete();

但是之后会发现这个图片还会存在,是因为系统中还会有它的缩略图

getcontentresolver.delete(
        Media.EXTERNAL_CONTENT_URI, 
        Media.DATA + "=?",
        path);

所以要彻底删除图片除了要删除SD中的图片外 还要再删除系统中保留的缩略图

File file=new File(photo.getUri());
getContentResolver().delete(
        MediaStore.Images.Media.EXTERNAL_CONTENT_URI, 
        MediaStore.Images.Media.DATA + "=?", 
        new String[]{photo.getUri()});//删除系统缩略图
file.delete();//删除SD中图片