Emi*_*art 5 java android out-of-memory
我对Android很新,并且一直在开发游戏.每次我都有用户报告memory exceptions,我发现这很令人惊讶,因为我创建的位图大小最多为200 kb.我打电话BitmapFactory.decodeResource()时,我创建一个新的sprite.由于我的应用程序是一个僵尸防御游戏,你可以期待我经常创建精灵.
每次我创建一个精灵,我都会调用decode资源来生成一个位图.我的问题是,如果我只在每个活动开始时调用解码资源,并在包级别引用位图,这是否会减少VM预算上的内存量?
Uma*_*air 18
BitmapFactory.Options o=new BitmapFactory.Options();
o.inSampleSize = 4;
o.inDither=false; //Disable Dithering mode
o.inPurgeable=true; //Tell to gc that whether it needs free memory, the Bitmap can be cleared
myBitMap=BitmapFactory.decodeResource(getResources(),ID, o);