0

I am trying to delete an image from my gallery. I'm using the code I got from here:
android : deleting an image

It seems to work for some people, but unfortunately not for me. If I run it, a small, unreadable file remains behind. I'm on Android 4.1.2.

Here is the code:

public void deleteImage(File fdelete) {
    //String file_dj_path = Environment.getExternalStorageDirectory() + "/ECP_Screenshots/abc.jpg";
    //File fdelete = new File(file_dj_path);
    if (fdelete.exists()) {
        if (fdelete.delete()) {
            Log.e("-->", "file Deleted :" + fdelete);
            callBroadCast();
        } else {
            Log.e("-->", "file not Deleted :" + fdelete);
        }
    }
}

public void callBroadCast() {
    if (Build.VERSION.SDK_INT >= 14) {
        Log.e("-->", " >= 14");
        MediaScannerConnection.scanFile(this, new String[]{Environment.getExternalStorageDirectory().toString()}, null, new MediaScannerConnection.OnScanCompletedListener() {
            /*
             *   (non-Javadoc)
             * @see android.media.MediaScannerConnection.OnScanCompletedListener#onScanCompleted(java.lang.String, android.net.Uri)
             */
            public void onScanCompleted(String path, Uri uri) {
                Log.e("ExternalStorage", "Scanned " + path + ":");
                Log.e("ExternalStorage", "-> uri=" + uri);
            }
        });
    } else {
        Log.e("-->", " < 14");
        sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,
                Uri.parse("file://" + Environment.getExternalStorageDirectory())));
    }
}
halfer
  • 19,824
  • 17
  • 99
  • 186
Melo
  • 37
  • 10

1 Answers1

0

If by

small unreadable file

you mean zero, you can do something like this:

long fileSize = fdelete.length();
if (fdelete.exists() || fileSize==0){
    fdelete.delete();
}

Then do

    if (fdelete.delete()) {
        Log.e("-->", "file Deleted :" + fdelete);
        callBroadCast();
    } else {
        Log.e("-->", "file not Deleted :" + fdelete);
    }
S.R
  • 2,819
  • 2
  • 22
  • 49