1. 程式人生 > >如何檢測記憶體洩露,如何進行記憶體優化? 【面試題】

如何檢測記憶體洩露,如何進行記憶體優化? 【面試題】

如何檢測記憶體洩露,如何進行記憶體優化?

    答:RAMROM 是什麼?   記憶體溢位更多的再java記憶體中。

Android系統為每一個應用程式都設定了一個硬性的DalvikHeap Size最大限制閾值,這個閾值在不同的裝置上會因為RAM大小不同而各有差異

檢測記憶體洩漏  Android Studio上可以通過Memory Monitor檢視記憶體中Dalvik Heap的實時變化

 

工具:  1 MAT 記憶體分析工具(排除弱軟引用)。   LeakCanary

工具

 

 

開發中如何避免記憶體洩漏

其實避免Activity的洩漏的方式可以總結為:

  不要讓生命週期長於Activity的物件持有到Activity的引用。

·  注意單例模式和靜態變數是否會持有對Context的引用;

·  注意監聽器的登出;(在Android程式裡面存在很多需要register與unregister的監聽器,我們需要確保在合適的時候及時unregister那些監聽器。)

·  不要在Thread或AsyncTask中的引用Activity;

   多用一些弱引用   避免使用強引用。