Android內存泄漏原因及解決方法

內存泄漏原因

靜態變量引起的內存泄漏

單例引用Context引起的內存泄漏

非靜態內部類引起的內存泄漏

內部現成導致的內存泄漏
Handler引起的內存泄漏

以上內存泄漏原因,可以歸結爲靜態成員或方法依賴於類,非靜態成員或方法依賴於類的實例

資源未關閉引起的內存泄漏

解決方法

靜態變量

向單例傳入Application的Context而不是Activity的Context

非靜態內部類

非靜態匿名內部類-將匿名內部類改成靜態匿名內部類
Handler-把Handler改成靜態匿名內部類,引用Activity的位置改爲弱引用,Activity銷燬時移除Handler的回調

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章