1. 程式人生 > >android 刪除手機中圖片的方法

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()))); }