Exemplo n.º 1
0
 /** Unregisters the given subscriber from all event classes. 取消当前订阅者所有订阅事件 */
 public synchronized void unregister(Object subscriber) {
   List<Class<?>> subscribedTypes = typesBySubscriber.get(subscriber); // 获取当前订阅者所有订阅事件的列表
   if (subscribedTypes != null) {
     for (Class<?> eventType : subscribedTypes) {
       unubscribeByEventType(subscriber, eventType); // 更新事件订阅者保存队列
     }
     typesBySubscriber.remove(subscriber); // 更新订阅者订阅事件列表
   } else {
     Log.w(TAG, "Subscriber to unregister was not registered before: " + subscriber.getClass());
   }
 }