內存泄漏原因
靜態變量引起的內存泄漏
單例引用Context引起的內存泄漏
非靜態內部類引起的內存泄漏
內部現成導致的內存泄漏
Handler引起的內存泄漏
以上內存泄漏原因,可以歸結爲靜態成員或方法依賴於類,非靜態成員或方法依賴於類的實例
資源未關閉引起的內存泄漏
解決方法
靜態變量
向單例傳入Application的Context而不是Activity的Context
非靜態內部類
非靜態匿名內部類-將匿名內部類改成靜態匿名內部類
Handler-把Handler改成靜態匿名內部類,引用Activity的位置改爲弱引用,Activity銷燬時移除Handler的回調