由于项目中有大量的回调,就使用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消失;