,我們比較關心的是這2行:
其中size是需要的記憶體,而allocated是分配了的記憶體,對應的2列分別是native和dalvik,當總數也就是total這一列超過單個程式記憶體的最大限制時,oom就很有可能會出現了。
多數時候,發生oom 都是在做一些跟相關的操作,以下提出一些建議盡量可以減少這種情況的發生:
1
.decode bitmap 的時候,盡量配置下options,例如:insamesize
2
.bitmap使用完以後,呼叫 bitmap.recycle()來釋放記憶體
3
.如果應用是基於的應用,盡量採用lazyload和dymanicrecycle
4
.decode bitmap 的時候,將decode**
try
catch
出來,
catch
oom error,避免程式crash,可以在
catch
裡面做一些釋放記憶體操作
/*** @author 張興業
xy-zhang#163.com
* android開發高階群:
278401545**/
adb shell dumpsys命令 檢視記憶體
具體每一項代表什麼,參考 我們比較關心的是這2行 其中size是需要的記憶體,而allocated是分配了的記憶體,對應的2列分別是native和dalvik,當總數也就是total這一列超過單個程式記憶體的最大限制時,oom就很有可能會出現了。1.decode bitmap 的時候,盡量配置下op...
adb shell dumpsys 命令 檢視記憶體
具體每一項代表什麼,參考 我們比較關心的是這2行 其中size是需要的記憶體,而allocated是分配了的記憶體,對應的2列分別是native和dalvik,當總數也就是total這一列超過單個程式記憶體的最大限制時,oom就很有可能會出現了。1.decode bitmap 的時候,盡量配置下op...
adb shell dumpsys 命令 檢視記憶體
具體每一項代表什麼,參考 我們比較關心的是這2行 其中size是需要的記憶體,而allocated是分配了的記憶體,對應的2列分別是native和dalvik,當總數也就是total這一列超過單個程式記憶體的最大限制時,oom就很有可能會出現了。多數時候,發生oom 都是在做一些跟相關的操作,以下提...