Bitmap 的內存自動回收機制不是那么理想,往往要自己處理(這也是官方文檔的建議),一般來說,要 遵循以下原則: 1.臨時的,已經沒用的 bitmap 對象要及時調用 recycle() 釋放,例如: mBitWallPaper.recycle(); mBitWallPaper = null; System.gc(); //可選 2.Activity中的Bitmap對象,如果是成員變量,需要在onDestroy()中明確釋放。 因為,即使在Activity調用Finish()結束后,虛擬機都不會立即回收Bitmap的內存(什么時候回收不得 而知),所以如一個Activity 中會創建一個很大的Bitmap,在Activiy結束后沒有明確釋放,多次調用 這個Activity后,容易發生內存溢出錯誤。