У меня есть этот метод для показа одного изображения с моей SD-карты в Android студии:Android Studio - Невозможно декодировать поток (Отказано в)
public void showImage(){
File imgFile = new File(Environment.getExternalStorageDirectory().getPath()+PATH+"Foto.jpg");
if(imgFile.exists()){
Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
ivProfileImage.setImageBitmap(myBitmap);
Log.i("Image","The image exists!");
}
}
Где ivProfileImage является ImageView и PATH является правильным. Я получаю это сообщение:
E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /storage/2673-1D16/ProfilePhotos/Foto.jpg: open failed: EACCES (Permission denied)
I/Image: The image exists!
И мои AndroidManifest.xml имеют права:
- "android.permission.READ_EXTERNAL_STORAGE"
- "android.permission.WRITE_EXTERNAL_STORAGE"
Я искал ответ, но никто не работает для меня. Есть идеи?
Заранее спасибо.
https://stackoverflow.com/questions/32635704/android-permission-doesnt-work-even-if-i-have-declared-it Также обратите внимание, что ваш код предназначен для внешнее хранилище, не съемное хранилище. – CommonsWare
Спасибо, я заметил его и исправлю добавление разрешения тоже. –