I am getting Image as BLOB type from API. And, I am saving as follows,
public static void setOptimalImage(Context ctx, File file, ImageView iv,
            Point size) {
        BitmapFactory.Options options = new BitmapFactory.Options();
        options.inJustDecodeBounds = true;
        BitmapFactory.decodeFile(file.getPath(), options);
        if (options.outHeight > 0 && options.outWidth > 0) {
            if (size == null) {
                size = new Point();
                WindowManager wm = (WindowManager) ctx
                        .getSystemService(Context.WINDOW_SERVICE);
                wm.getDefaultDisplay().getSize(size);
            }
            options.inSampleSize = Utils.calculateInSampleSize(options, size.x,
                    size.y);
            options.inJustDecodeBounds = false;
            try {
                iv.setImageBitmap(BitmapFactory.decodeFile(file.getPath(),
                        options));
            } catch (OutOfMemoryError oome) {
                Log.e(Utils.class.getName(),
                        oome.getMessage() == null ? "OutOfMemory error: "
                                + file.getName() : oome.getMessage());
            }
        }
    }
Now, the issue i am facing is,
When I am saving it, sometimes the image is saving only half.Now, my question is,
- Is there any way to check the image from the file path is half loaded (Which means corrupted) ?
 
Edit:
- I am downloading an image from server. In the mean while, i have lost my net connection. In that case, my image is downloading half. Can i get those corrupted images programmatically ? Or Any idea how to handle in this Case ?
 
Any help would be really appreciated.
Thanks.
Attaching Image for Reference:
