最近我开始使用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是对上一个活动的弱引用。即,当没有强/直接引用时,它将被释放。

10-08 16:29