我从我的资源文件夹中获取了一些图像,我有这个例外:
03-11 10:18:28.019: E/dalvikvm-heap(4052): Out of memory on a 9830416-byte allocation.
Run Code Online (Sandbox Code Playgroud)
我在这里有这个错误:
//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);
Run Code Online (Sandbox Code Playgroud)
这很奇怪,因为我在每台设备上都没有这个错误,只有Galaxy S3.
您可以尝试添加以下代码
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);
Run Code Online (Sandbox Code Playgroud)
此inSampleSize选项可减少内存消耗.
您可以参考以下链接
| 归档时间: |
|
| 查看次数: |
9982 次 |
| 最近记录: |