Bitmap bmp, rotated;
InputStream stream = context.getContentResolver().openInputStream(uri);
bmp = BitmapFactory.decodeStream(stream); // stream does not equal null
Matrix mat = new Matrix();
mat.postScale(0.5f, 0.5f);
mat.postRotate((float)rotation);
// rotation calculated using ExifInterface orientation attr. for example: 90
rotated = Bitmap.createBitmap(bmp, 0, 0, bmp.getWidth(), bmp.getHeight(), mat, true);
上記のスニペットでは、bmp == null の場合があり、NullPointerException @ Bitmap.createBitmap が発生することがあります。カメラ アクティビティから uri を取得しています。画像は間違いなく保存されています。
それが問題だった場合、OutOfMemoryException が発生しますか? 誰かがこれに問題があるか、それを改善する方法を見ていますか?