为什么堆大小会不断增加?

时间:2015-09-10 03:05:54

标签: android heap-memory heap-dump rippledrawable

我的应用程序有很多连锁反应和动画。

我尝试过来回多个屏幕,还有垃圾邮件点击按钮。

我注意到即使某些屏幕已经关闭,堆大小也会持续增加。

当我检查堆转储时,具有最高保留堆的类是android.graphics.Bitmap类,并指向我单击的所有具有Ripple效应的按钮。

按钮上的涟漪效果只是简单的涟漪,使用?attr/selectableItemBackgroundBorderless作为背景。但每次点击带有涟漪的按钮,它会增加0.3mb或0.5mb。

1 个答案:

答案 0 :(得分:0)

可能是某种MemoryLeak。如果不分析代码,几乎不可能分辨出问题出在哪里。我推荐一些测试。

您可以试用Leak Canary库。 lib可以"观看"细节对象并缩小对泄漏的搜索范围。