一.內(nèi)存管理機制概述
1.分配機制:操作系統(tǒng)為每個進(jìn)程分配合理的內(nèi)存
2.回收機制:在系統(tǒng)內(nèi)存不足時,有一個回收再分配內(nèi)存的機制
二.Android內(nèi)存管理機制
1.分配機制:彈性的分配方式,系統(tǒng)一開始為app進(jìn)程分配小額的內(nèi)存,app運行時需要內(nèi)存,再分配額外的內(nèi)存。讓更多的進(jìn)程存活
2.回收機制:優(yōu)先級越低,越容易被殺死
回收效益:殺進(jìn)程時判斷殺死進(jìn)程帶來的回收效益,殺更少的進(jìn)程回收更多的內(nèi)存
三.內(nèi)存管理機制的特點
1.更少的占用內(nèi)存
2.在合適的時候,合理的釋放系統(tǒng)資源
3.在系統(tǒng)內(nèi)存緊張的情況下,能釋放掉大部分不重要的資源,來為Android系統(tǒng)提供可用的內(nèi)存。
4.能夠很合理的在特殊生命周期中,保存或者還原重要數(shù)據(jù),以至于系統(tǒng)能夠正確的重新恢復(fù)該應(yīng)用
四.內(nèi)存優(yōu)化方法
1.當(dāng)Service完成任務(wù)后,盡量停止它
2.在UI不可見的時候,釋放掉一些只有UI使用的資源
3.在系統(tǒng)內(nèi)存緊張的時候,盡可能多的釋放掉一些非重要資源
4.避免濫用Bitmap導(dǎo)致的內(nèi)存浪費
5.使用針對內(nèi)存優(yōu)化過的數(shù)據(jù)容量
6.避免使用依賴注入的框架
7.使用ZIP對齊的APK,會壓縮資源
8.使用多進(jìn)程