0

画面にいくつかの写真(通常は電話のカメラで撮影したもの)を表示する必要があるAndroidアプリを開発しています。ビットマップを作成した方法は次のとおりです。

Uri uri = Uri.withAppendedPath(Images.Media.EXTERNAL_CONTENT_URI, "" + mediaId);
bitmap = BitmapFactory.decodeStream(context.getContentResolver().openInputStream(uri));

この 2 行目は、一部のハンドセットで OutOfMemoryException で終了します。私は何か間違ったことをしていますか、それとも同じことをする別の方法がありますか?

アイデアをお寄せいただきありがとうございます

4

1 に答える 1

0

カメラからの写真は数 MB の大きさです。Android アプリケーションでは、最大 24MB の RAM を使用できます ( Android 2.2 のアプリケーションごとの最大メモリ制限は? を参照してください) 。

そのため、アプリケーションにカメラからの複数の画像がある場合、アプリケーションで使用できる RAM に収まりません。

画像を縮小することが、私が恐れている唯一の解決策です...

于 2013-01-15T13:53:35.123 に答える