1. 程式人生 > >使用命令列檢測Android記憶體洩露

使用命令列檢測Android記憶體洩露

首先我們用電腦連線裝置,用cmd執行adb的記憶體檢測的命令

adb shell dumpsys meminfo com.screening

後面的com.screening是包名,要改成自己的

執行後顯示的資訊

這裡寫圖片描述

這裡寫圖片描述

這裡面需要關心的有:HeapSize(堆總大小)HeapAlloc(已用大小)HeapFree(剩餘可用)

分為Native Heap和Dalvik Heap,這裡我們只關心Dalvik Heap

另外還有一些應用相關資訊:Views,Activitys等,可以統計到已經存在的view和activity個數

那麼,怎麼判斷一個activity是否發生洩漏?

這裡有個簡單的辦法,先使用以上命令,獲取activity個數,然後在應用內執行一些可用關閉activity的操作,比如切換使用者,退出登入,或者一些介面的返回鍵finish等

activity執行finish或onDestroy之後,再次執行以上命令,獲取記憶體資訊,看activity個數,如果個數沒有減少,這個activity就很可能發生洩漏了