看看还剩下那些函数没有读:
我们一个个的看过来:
1、builder()
public static EventBusBuilder builder() {
return new EventBusBuilder();
}
该函数是静态的,返回的是一个新的EventBusBuilder
那么可以猜测使用了个性化定制EventBusBuilder的接口。我们可以通过它个性化定制EventBus。
2、clearCaches()
字面意思以及实现都是清除缓存。很少使用。除非我们在使用的过程中有什么特殊的需求。
3、isRegistered(Object)
判断当前类是否已经注册过了(Activity)
4、cancelEventDelivery(Object)
取消事件,当前为发现使用,应该是为了以后功能完善而做的。
5、stiky相关函数
6、hasSubscriberForEvent(Object)
public boolean hasSubscriberForEvent(Class<?> eventClass) {
List<Class<?>> eventTypes = lookupAllEventTypes(eventClass);
if (eventTypes != null) {
int countTypes = eventTypes.size();
for (int h = 0; h < countTypes; h++) {
Class<?> clazz = eventTypes.get(h);
CopyOnWriteArrayList<Subscription> subscriptions;
synchronized (this) {
subscriptions = subscriptionsByEventType.get(clazz);
}
if (subscriptions != null && !subscriptions.isEmpty()) {
return true;
}
}
}
return false;
}
判断该事件是否已经注册过,即是否有响应的方法。
7、handleSubscriberException
集中处理可控异常的函数,不再做分析,与好几个相关的一场相关类有关
下一节我们详细读一读sticky相关的内容