編輯:關於Android編程
使用adb shell dumpsys meminfo pkgname或者直接使用AndroidStudio裡面的memory usage功能然後就會出現如下信息:
Applications Memory Usage (kB): Uptime: 14237237 Realtime: 23790474 ** MEMINFO in pid 8071 [com.xtc.watch] ** Pss Private Private Swapped Heap Heap Heap Total Dirty Clean Dirty Size Alloc Free ------ ------ ------ ------ ------ ------ ------ Native Heap 0 0 0 0 21924 8558 6405 Dalvik Heap 122472 122372 0 15672 143308 65400 77908 Dalvik Other 10361 10076 164 224 Stack 440 440 0 8 Other dev 4 0 4 0 .so mmap 6441 3452 2636 2048 .apk mmap 611 0 340 0 .ttf mmap 538 0 504 0 .dex mmap 8407 1640 2940 40 Other mmap 80 4 0 0 Unknown 10940 10936 0 148 TOTAL 160294 148920 6588 18140 165232 73958 84313 Objects Views: 288 ViewRootImpl: 2 AppContexts: 11 Activities: 2 Assets: 5 AssetManagers: 5 Local Binders: 30 Proxy Binders: 38 Death Recipients: 3 OpenSSL Sockets: 1 SQL MEMORY_USED: 138 PAGECACHE_OVERFLOW: 24 MALLOC_SIZE: 62 DATABASES pgsz dbsz Lookaside(b) cache Dbname 4 20 306 25/47/12 /data/data/com.xtc.watch/databases/upload.dbNative Heap是native層的內存堆棧,Dalvik Heap是java層的內存堆棧,如果這二者加起來的內存占用超過了應用最大內存限制就會報OOM異常,剩下的.so mmap是 C 庫代碼占用的內存,.jar mmap是Java 文件代碼占用的內存 ,.apk mmap是apk代碼占用的內存,.dex mmap是Dex 文件代碼占用的內存 Objects中的Activities表示當前內存中的activity對象的個數,啟動一個activity就會生成一個activity對象,當退出activity的時候,activity對象就會被釋放,所以反復的進出一個activity界面然後查看Activities的個數有沒有保持不變,如果增加了,那麼就說明這個activity對象沒有被釋放,也就是說可能存在內存洩漏,但是具體哪裡洩漏了並不知道
eclipse中有一個ddms工具,可以查看線程信息(Threads),內存使用情況(VM Heap),內存分配跟蹤(Allocation Tracker),CUP使用情況(Sysinfo CUP load),內存使用餅狀圖(Sysinfo Memory usage),這裡我們暫時用到VM Heap,選擇要查看的app進程,點擊左上角的show heap updates,選擇VM Heap並點擊Cause GC按鈕,然後就出現下圖:
觀察data object的Total Size選項,這個是app的創建的java對象做占用的內存大小,Count是總內存的對象的個數,反復的進出一個activity,看data object的Total Size有沒有明顯的增加,正常情況下進入一個activity的時候會明顯增加,退出一個activity會有明顯的回落,總體是維持在一個比較穩定的水平如果反復進出activity,Total Size不斷上升,那麼可能就存在內存洩漏了,需要具體排查
表狀時鐘(AnalogClock)java.lang.Object;android.view.View;android.widget.AnalogClock;Analog
一直感覺AndroidStudio沒有eclipse快,但是最近由於遇到一個問題不得不將工程遷移到AndroidStudio上,遷移後之前在eclipse上所做的所有批量
前兩天研究了一下NDK開發,然而沒有成功。今天興趣盎然,再試試,不知道會不會成功,我將記錄我在學習過程中遇到的一些困難,以及成功後的效果。我當前的狀態是以及學習了一段時間
本文實例講述了Android編程單選項框RadioGroup用法。分享給大家供大家參考,具體如下:今天介紹的是RadioGroup 的組事件.RadioGroup 可將各