最近我开始使用LeakCanary。我这是我的堆栈跟踪:
com.my.app.ui.menu.MenuActivity has leaked:
D/LeakCanary: * GC ROOT static org.acra.ACRA.errorReporterSingleton
D/LeakCanary: * references org.acra.ErrorReporter.lastActivityCreated
D/LeakCanary: * leaks com.my.app.ui.menu.MenuActivity instance
如果我理解正确,MenuActivity 包含字段 errorReporterSingleton 上的静态引用,对吗?我该如何解决此泄漏问题?
最佳答案
LeakCanary 似乎在告诉我们 org.acra.ErrorReporter.lastActivityCreated
持有对 com.my.app.ui.menu.MenuActivity
的引用.
LeakCanary 是错误的。
lastActivityCreated
是对最后一个 Activity 的弱引用。即它会在没有强/直接引用时发布。
关于android - ACRA 和 LeakCanary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37024174/