0

我在我的应用程序中添加了很棒的 LeakCanary 库,很快我就开始收到各种报告,说明我在各种活动中使用的FirebaseAuth对象生成的泄漏。

现在我的问题是:它是由 Firebase 库本身产生的泄漏,还是我应该销毁 onDestroy 中的对象(例如将其设置为 null)?

这是 LeakCanary 的报告这里是堆转储

4

1 回答 1

3

答案隐藏在泄漏报告的这一行中:

* references com.ispimi.ispimi.DetailsFragment$4.this$0 (anonymous class implements com.firebase.client.ValueEventListener)

您需要确保在Activity销毁之前删除您添加的任何侦听器。平衡添加监听器和移除监听器。例如,如果您onCreateonDestroy. 如果您将它添加到onStart删除它onStop等等。

于 2015-06-08T16:47:56.877 回答