0

db に格納されている間に blob 型からバイト配列をフェッチしています。小さな画像では機能しますが、画像サイズが 200kb を超えると outofmemoryerror のエラーが発生します。このようなエラーを克服するにはどうすればよいですか

写真は私のバイト配列です

ByteArrayInputStream imageStream = new ByteArrayInputStream(photo);
            Bitmap theImage= BitmapFactory.decodeStream(imageStream);
            Bitmap bitmapScaled = Bitmap.createScaledBitmap(theImage, 100,80, true);
            Drawable drawable = new BitmapDrawable(bitmapScaled);
            imgPath.setBackgroundDrawable(drawable);
            imgPath.setScaleType(ImageView.ScaleType.FIT_END);

Logcat エラー

05-06 15:55:38.871: E/AndroidRuntime(2647): FATAL EXCEPTION: main
05-06 15:55:38.871: E/AndroidRuntime(2647): java.lang.OutOfMemoryError
05-06 15:55:38.871: E/AndroidRuntime(2647):     at android.graphics.BitmapFactory.nativeDecodeStream(Native Method)
05-06 15:55:38.871: E/AndroidRuntime(2647):     at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:493)
05-06 15:55:38.871: E/AndroidRuntime(2647):     at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:549)
05-06 15:55:38.871: E/AndroidRuntime(2647):     at com.example.hotelmenu.RevisedMainMenu.displayMenu(RevisedMainMenu.java:655)
05-06 15:55:38.871: E/AndroidRuntime(2647):     at com.example.hotelmenu.RevisedMainMenu.onClick(RevisedMainMenu.java:615)
4

1 に答える 1