android 删除手机中图片的方法

   在app中删除手机中的图片,如果使用file的delete方法,会出现删除不干净的情况,这个时候留有一个空白的文件,还是会显示在相册中。经过调查后,发现是数据库中没有更新导致的,后来经过测试多款机型,找到了一个比较好的方法,代码如下:


Uri uri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
ContentResolver mContentResolver = context.getContentResolver();
String where = MediaStore.Images.Media.DATA + "='" + filePath + "'";
//删除图片
mContentResolver.delete(uri, where, null);
其中,filepath为图片路径,这样删除以后,在有的机型里还会有残留,所以需要更新媒体库。代码如下:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    new MediaScanner(PreviewActivity.this, path);
} else {
    sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://" + Environment.getExternalStorageDirectory())));
}

你可能感兴趣的:(android经验分享,android,studio)