dumpsys meminfo詳解

先說命令,詳細講解放在后面

查看內(nèi)存使用情況

  • adb shell dumpsys meminfo [pkg] 查看指定進程包名的內(nèi)存使用情況

命令詳解

android程序內(nèi)存被分為2部分:native和dalvik,dalvik就是java堆,普通java對象是在java堆分配,而bitmap是直接在native上分配,對于內(nèi)存的限制是 native+dalvik 不能超過最大限制。android程序內(nèi)存一般限制在16M,當然也有24M的。

pplications Memory Usage (kB):
Uptime: 27199950 Realtime: 145023102

** MEMINFO in pid 20100 [com.laomou.memtest] **
                   Pss  Private  Private  Swapped     Heap     Heap     Heap
                 Total    Dirty    Clean    Dirty     Size    Alloc     Free
                ------   ------   ------   ------   ------   ------   ------
  Native Heap     1876     1544        0    15964    29440    27821     1618
  Dalvik Heap      780      740        0       36    17032    15133     1899
 Dalvik Other      496      312        0     8500                           
        Stack      136      136        0        4                           
    Other dev        4        0        4        0                           
     .so mmap      457       56      164     2696                           
    .apk mmap      127        0       20        0                           
    .dex mmap      386       44      340        4                           
    .oat mmap     1070        0      340        0                           
    .art mmap     1520      388      544      140                           
   Other mmap       11        8        0        0                           
      Unknown       92       92        0      116                           
        TOTAL     6955     3320     1412    27460    46472    42954     3517

 App Summary
                       Pss(KB)
                        ------
           Java Heap:     1672
         Native Heap:     1544
                Code:      964
               Stack:      136
            Graphics:        0
       Private Other:      416
              System:     2223

               TOTAL:     6955      TOTAL SWAP (KB):    27460

 Objects
               Views:        7         ViewRootImpl:        0
         AppContexts:        2           Activities:        1
              Assets:        4        AssetManagers:        2
       Local Binders:        3        Proxy Binders:        8
       Parcel memory:        2         Parcel count:       10
    Death Recipients:        0      OpenSSL Sockets:        0

 Dalvik
         isLargeHeap:    false

 SQL
         MEMORY_USED:        0
  PAGECACHE_OVERFLOW:        0          MALLOC_SIZE:        0
  • Objects
    查看參數(shù),如果Views、Activities 不等于0的話,那么肯定存在內(nèi)存泄漏。

  • Dalvik
    isLargeHeap: false

  • AndroidManifest.xml

<application android:largeHeap="false">

如果不是內(nèi)存消耗大的應用,如圖庫之類,建議不要設置isLargeHeap=true

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 非常棒的一片博文,在這里轉一下。感謝作者。Android進程的內(nèi)存管理分析最近在網(wǎng)上看了不少Android內(nèi)存管理...
    任易Change閱讀 811評論 0 0
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,109評論 25 709
  • 1、內(nèi)存了解 在Android App的性能優(yōu)化的各個部分里,內(nèi)存方面的知識較多且不易理解,內(nèi)存的問題絕對是最令人...
    蕭竹閱讀 9,080評論 1 12
  • 作者:李新越 反省中。 人,終究是感性的動物。會哭,會笑,會喜,會悲,人的感情有冷也有熱。有的人人突然覺得,曾有一...
    抱芪閱讀 802評論 0 4
  • 撈起水淋淋的月亮 月亮睜開沉默與別離的 眼睛 手指翻越一片黑色紙張,這時候我便被時光肢解 埋葬到流血地下 哀傷的子...
    紅塵紅塵閱讀 379評論 0 6

友情鏈接更多精彩內(nèi)容