Android でアプリのメモリ使用量が多い問題をトラブルシューティングする方法を知りたいです。インターネットを検索したところ、アプリのヒープのメモリ ダンプを取得するのに DDMS プラグインが役立つことがわかりました。しかし、これは役に立たなかった。
アプリ「Usage Timelines Free」は 94 MB のメモリが使用されていることを示していますが、DDMS ヒープ ダンプは合計 8.4 MB を示しており、疑わしいリークはリソース ファイルです。
adb (dumpsys meminfo) からダンプを生成すると、次のようになります。
Shared Private Heap Heap Heap
Pss Dirty Dirty Size Alloc Free
------ ------ ------ ------ ------ ------
Native 20 8 20 54588 39431 1892
Dalvik 6732 9952 6396 10756 10028 728
Cursor 0 0 0
Ashmem 184 0 184
Other dev 11462 1172 11384
.so mmap 2467 2072 1156
.jar mmap 0 0 0
.apk mmap 48 0 0
.ttf mmap 2 0 0
.dex mmap 1037 0 0
その他 mmap 41 16 32
Unknown 46352 292 46348
TOTAL 68345 13512 65520 65344 49459 2620
この大量のメモリ消費の背後にあるものをどうやって知ることができますか? 私のアプリは、1 日に数回アクセスされるいくつかのアクティビティを備えた、永久に実行されるフォアグラウンド モニター サービスです。
ありがとう。