天天看点

EventBus遇到的BUG “IllegalStateException: Activity has been destroyed” in fragment trasaction

 由于项目中有大量的回调,就使用EventBus.结果出现了一个BUG。

至于具体的用法我就不介绍了,下面主要介绍使用EventBus时遇到的Bug.

我在使用Activity + fragment 的时候,发现在页面多次返回之后,应用崩溃。

查看log日志,提示:

“IllegalStateException: Activity has been destroyed” in fragment trasaction

就去百度 “Activity has been destroyed”,搜索结果很多,但是都没有效果。 把问题说给同事听后,有人说可能内存泄漏,导致内存不足, Activity就被销毁了。

然后检查,发现 EventBus 忘了 unregister(); 在代码中加了 EventBus.getDefault().unregister(this) 之后,BUG消失;