[英]Why does heap size keep increasing?
我有一个具有很多波纹效果和动画的应用程序。
我尝试在多个屏幕之间来回切换,还尝试了垃圾邮件点击按钮。
我注意到,即使某些屏幕已经关闭,堆大小仍在不断增加。
当我检查堆转储时,具有最高保留堆的类是android.graphics.Bitmap
类,它指向我单击的所有具有波纹效果的按钮。
按钮上的波纹效果只是简单的波纹,它使用?attr/selectableItemBackgroundBorderless
作为背景。 但是,每次单击带有波纹的按钮时,它会增加0.3mb或0.5mb。
可能是某种MemoryLeak。 如果不分析代码,几乎不可能分辨出问题出在哪里。 我推荐一些测试。
您可以尝试Leak Canary库。 lib可以“监视”特定对象并缩小搜索范围。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.