尤其在某些 UI 的操作上,若系統進行 Garbage Collection,則會讓 User 在操作時感覺到頓頓的,另外,圖片上的使用,很容易使得 App Out Of Memory(OOM)(每個 App 被分配的空間是 16M),因此可利用 Eclipse plugin - MAT 來找出在 App 中是那裡使用了大量空間,而且沒有做適當的釋出。
Install
- Install MAT Plugin on Eclipse - Install New Software
- http://download.eclipse.org/mat/1.1/update-site/
- 開啟關閉 App 約五次,來觀察是否有正確的建立與回收物件
- Dump HPROF file by DDMS
- Convert HPROF format by Android Tool, hprof-conv
- Open eclipse perspective, Memory Analyer and File --> Open Heap Dump...
- Shallow Heap
- 物件本身的記憶體使用量。
- Retained Heap
- 指物件本身 + 參照過來的物件們所使用的記憶體使用量。
如何妥善的使用 bitmap
Displaying Bitmaps Efficiently
* Reference
- 使用MAT(記憶體分析)工具查看Memory Leak ***
- HOWTO: Debug Memory Leak in Android
- Download MAT
- Android Memory Usage
- Avoiding memory leaks - Romain Guy ***
- Attacking memory problems on Android ***
沒有留言:
張貼留言