ExifInterface FileNotFoundException /storage/emulated/0/DCIM/Camera/IMG_20200319_211738.jpg - PullRequest
0 голосов
/ 19 марта 2020

После захвата изображения из эмулятора Android в Android Studio я получаю URI контента и через него хочу обработать изображение. Одним из таких процессов является то, что я хочу изменить ориентацию. Так что у меня есть функция, которая делает это

@Throws(IOException::class)
    fun modifyOrientation(bitmap: Bitmap, imagePath: String): Bitmap {
        val ei = ExifInterface(File(imagePath).absolutePath)

        return when (ei.getAttributeInt(
            ExifInterface.TAG_ORIENTATION,
            ExifInterface.ORIENTATION_NORMAL
        )) {
            ExifInterface.ORIENTATION_ROTATE_90 -> rotate(bitmap, 90L.toFloat())

            ExifInterface.ORIENTATION_ROTATE_180 -> rotate(bitmap, 180L.toFloat())

            ExifInterface.ORIENTATION_ROTATE_270 -> rotate(bitmap, 270.toFloat())

            else -> bitmap
        }
    }

Значение imagePath равно

imagePath = "/storage/emulated/0/DCIM/Camera/IMG_20200319_211738.jpg"

Однако я получаю исключение в строке ExifInterface (File (imagePath) .absolutePath) .. !

Method threw 'java.io.FileNotFoundException' exception.
android.system.ErrnoException: open failed: EACCES (Permission denied)

Что я делаю не так ..?

...