Reputation: 744
I'm getting some image from my assets folder, and I have this exception:
03-11 10:18:28.019: E/dalvikvm-heap(4052): Out of memory on a 9830416-byte allocation.
I have this error here :
//stream to get photo
InputStream bitmap=null;
bitmap=getResources().getAssets().open("ProduitsMini/"+productList.get(rang).getImg_mini());
Bitmap bit=BitmapFactory.decodeStream(bitmap);
// get drawable image
Drawable mDrawable = new BitmapDrawable(getResources(),bit);
It's strange because I haven't this error on each device, but only with Galaxy S3.
Upvotes: 5
Views: 10053
Reputation: 13805
You can try adding below code
InputStream bitmap=null;
bitmap=getResources().getAssets().open("ProduitsMini/"+productList.get(rang).getImg_mini());
BitmapFactory.Options options=new BitmapFactory.Options();
options.inSampleSize = 8;
Bitmap preview_bitmap = BitmapFactory.decodeStream(bitmap,null,options);
This inSampleSize option reduces memory consumption.
You can refer to below link
https://stackoverflow.com/a/823966/1441666
Upvotes: 9