【Android】EventBus事件接收不到的几种情况

关于EventBus事件接收不到,遇到过以下几种情况。

1、没有调用EventBus的注册方法(register)

2、接收方法中的参数与发送的不一致,导致EventBus判断没有对应的注册者

3、发送的是粘性事件,并且是同一类型的粘性事件(这个是我最近遇到的)

对于第三点的原因,经过阅读源码发现:

粘性事件会加入一个叫stickyEvents的Map集合中,该集合使用event.getClass作为key,event作为value,因此当出现同一类的粘性事件时,会将之前的粘性事件给替换掉。

发布了24 篇原创文章 · 获赞 7 · 访问量 8693

猜你喜欢

转载自blog.csdn.net/d745282469/article/details/95165457