Опитвам се да получа изображение от галерията (по намерение).
Получих тази грешка:
985120-byte external allocation too large for this process.
Out of memory: Heap Size=4871KB, Allocated=2472KB, Bitmap Size=19677KB
VM won't let us allocate 985120 bytes
Това е моят код, където получавам изображение:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
....
mBitmap = Media.getBitmap(this.getContentResolver(), data.getData());
...
}
Как мога да го реша?
-------- АКТУАЛИЗАЦИЯ ---------
Забелязах, че ако избера предварително съществуващо изображение (инсталирана HTC снимка), получавам тази грешка. Ако избера изображение, избрано от камерата, всичко работи добре.
И така, променям кода си според този http://developer.android.com/training/displaying-bitmaps/load-bitmap.html:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
InputStream stream = getContentResolver().openInputStream(data.getData());
mBitmap = BitmapFactory.decodeStream(stream,null,options);
stream.close();
Но сега растерното изображение е NULL !!!