使用内置相机应用程序捕获图像的方向

时间:2011-02-07 08:10:43

标签: android image camera orientation android-camera-intent

我使用intent调用了android 2.1中的内置Camera应用程序。我使用了以下代码:

Intent cameraintent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File file = new File(Environment.getExternalStorageDirectory(), "MyTestFile.jpg");
cameraintent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));
outputFileUri = Uri.fromFile(file);
startActivityForResult(cameraintent, CAMERA_PIC_REQUEST);

要获取捕获图像的方向,我使用了以下代码:

Uri capturedImage = outputFileUri;
Bitmap theBmp = MediaStore.Images.Media.getBitmap(getContentResolver(), capturedImage);
int img_orient=0;                       
String[] projection = { MediaStore.Images.Media.ORIENTATION };
Cursor mImageCursor = managedQuery(capturedImage, projection, null, null, null);

由于光标mImageCursor始终为空,我无法获取捕获的照片的方向。我的代码有什么问题?

1 个答案:

答案 0 :(得分:0)

您可以尝试使用ExifInterface类来读取信息。或者,照片很可能没有。有些设备会旋转照片并保存它们而不设置方向。