Когда я делаю снимок с приложением для камеры Android, это обнаруживает ориентацию телефона и сохранило картинку соответственно. Таким образом, если я сделаю снимок здания, то крыша будет на верхнем строении, держу ли я телефон в альбомном положении или портрете.
Однако, когда я использую
Intent imageCaptureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
для получения изображения приложение для камеры не реагирует на ориентацию. Если я буду держать телефон вертикально (портрет), то получившее изображение будет повернуто с крышей упомянутого здания слева от экрана.
Как я могу установить намерение так, чтобы камера приняла ориентацию во внимание?
Или я могу вывести в некотором роде, в какой ориентации был сделан снимок, и поверните его сам впоследствии?
Или есть ли иначе?
Я нашел ответ. В Exif изображения есть индикатор ориентации. На всякий случай, Exif можно посмотреть в Android вот так:
ExifInterface exif = new ExifInterface("filepath");
exif.getAttribute(ExifInterface.TAG_ORIENTATION);