2011-10-05 56 views
1

我想在Android应用程序来解决内存问题。如何跟踪和Android中调试外部内存分配?

我相信,内存泄漏是不会发生的内部堆,因为我已经彻底调查使用内存分析工具这种可能性,并在DDMS堆/分配跟踪。

我相信,找到问题的根源,我看分配上的外部堆,而不是内部堆。

10-05 18:17:06.221:DEBUG/dalvikvm(2559):GC_CONCURRENT释放1137K,47%的游离4556K/8455K,外部1625K/2137K,暂停6ms的+ 4ms的

外部数字就是在崩溃之前不断膨胀的一个。

有没有办法做到这一点?

干杯。

回答

0

你有没有使用的MAT工具?这非常有用。

http://www.eclipse.org/mat/

如果您遇到与内存由于位图的问题,考虑了WeakReference或请确保调用循环()在你的位图时,即可大功告成。

+0

我已经看着MAT,但是它只分析了内部堆制成的数据分配。有没有办法将这个工具指向外部堆?谢谢。 – Zambotron

+0

不是我所知道的。但是,大多数令人不安的分配是Bitmap(它是从堆中分配的)。你的应用程序是否处理位图? – tarrant