我在Android游戏中使用了很多位图,一切都很好,但当我点击一个按钮开始新的活动时,游戏冻结了大约半秒钟。它并不多,但它很烦人。在onDestroy方法中,我回收所有位图,为了节省内存,导致应用程序冻结。有没有更智能的解决方案呢?
答案 0 :(得分:1)
当调用onDestroy时,也许可以尝试在asynctask中回收它们
像这样的东西
@Override
protected void onDestroy() {
super.onDestroy();
new AsyncTask<Bitmap[],Void,Void>() {
@Override
protected Void doInBackground(Bitmap[]... params) {
for (Bitmap b : params[0]) {
b.recycle();
}
return null;
}
}.execute(bitmaps);
}