我想使用比 android kitkat 更高的设备获取图像。目前我使用 filedescriptor 和 parcelfiledescriptor 来获取图像。我成功获得了图像,但旋转了。由于图像存储在谷歌驱动器上,我不能直接使用输入流。我该如何解决这个问题?(我知道图像数据通常存储在 exif 中,但如果我尝试获取 exif 数据,则旋转始终为 0)我也尝试过使用 lib:https ://github.com/coomar2841/image-chooser-library但我在这里得到同样的问题。
ParcelFileDescriptor parcelFileDescriptor;
try {
parcelFileDescriptor = activity.getContentResolver().openFileDescriptor(selectedImage, "r");
FileDescriptor fileDescriptor = parcelFileDescriptor.getFileDescriptor();
Bitmap image = BitmapFactory.decodeFileDescriptor(fileDescriptor);
image = ExifUtil.rotateBitmap(selectedImagePath, image);
parcelFileDescriptor.close();
if (cropCircle) {
imageView.setImageBitmap(ImageUtils.cutCircle(image));
} else {
imageView.setImageBitmap(image);
}
return image;
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}