file.exists () возвращает false для существующего файла в Android

В моем приложении пользователь может выбрать изображение из SDCard и установить в качестве изображения профиля. Все работает нормально, но когда пользователь выбирает изображение из папки WhatsApp из SDCard изображение не может быть декодирован.

Я использую следующий код для декодирования файла и отображения в ImageView.

if (imgFile.exists()) {                                 

Bitmap myBitmap = BitmapFactory.decodeFile(imgFile  
        .getAbsolutePath());                        

imgProfilePic.setImageBitmap(myBitmap);             
myBitmap = null;                                    
System.gc();                                        
Runtime.getRuntime().gc();                          

}

Я получаю выбранный путь к изображению/storage/sdcard0/WhatsApp/Media/WhatsApp Images/IMG-20130804-WA0000.jpg и он существует в SDCard, ноfile.exists всегда возвращает ложь. Это работает нормально, если пользователь выбирает изображение из других папок, а не WhatsApp.

Обновить

Я следую за шагами, как

1. click on profilepic(imageview).
2. select options(from camera,galerry,or edit)
3. open selected or captured image in CropImage Activity.
4. display cropped image.

Любая помощь будет принята с благодарностью .. Спасибо.

Ответы на вопрос(2)

Ваш ответ на вопрос