android 刪除手機中圖片的方法
阿新 • • 發佈:2019-01-29
在app中刪除手機中的圖片,如果使用file的delete方法,會出現刪除不乾淨的情況,這個時候留有一個空白的檔案,還是會顯示在相簿中。經過調查後,發現是資料庫中沒有更新導致的,後來經過測試多款機型,找到了一個比較好的方法,程式碼如下:
Uri uri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; ContentResolver mContentResolver = context.getContentResolver(); String where = MediaStore.Images.Media.DATA + "='" + filePath + "'"其中,filepath為圖片路徑,這樣刪除以後,在有的機型裡還會有殘留,所以需要更新媒體庫。程式碼如下:; //刪除圖片 mContentResolver.delete(uri, where, null);
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()))); }