【问题标题】:how to avoid EventBus Exception (Android)?如何避免 EventBus 异常(Android)?
【发布时间】:2015-09-29 08:36:00
【问题描述】:

我正在处理现有的应用程序,他们正在使用 EventBus 来获取每个网络异常,如下所示:

  public void onEvent(final NetworkErrorEvent event) {
    runOnUiThread(new Runnable() {

        @Override
        public void run() {

            Log.e("EventBus Event" + "(IOException)");

            if (event.getType() == NetworkError.Timeout) {
                L.e("timeout");
            } else if (event.getType() == NetworkError.Disconnected) {
                L.e("disconnected");
            } else if (event.getType() == NetworkError.UnknownHost) {
                L.e("UnknownHost");
            }

             showConnectionErrorDialog(event.getType(), true);
        }
    });
}

我想添加 api 调用,如果失败,我不想通知 EventBus,怎么做?

我在我的项目中没有看到 eventBus.post(event),我编写的代码是捕获每个网络错误,即使我不希望他这样做。

【问题讨论】:

    标签: android exception broadcastreceiver event-bus general-network-error


    【解决方案1】:

    NetworkErrorEvent 不是 EventBus 的一部分 - 我建议找出它的来源并从那里开始。我怀疑它可能是自定义代码包装了改造中的一些东西。

    EventBus 非常适合记录网络故障之类的事情,因为您可以在代码中的任何地方触发事件,然后只需选择在某个地方、甚至多个地方或无处处理这些事件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-10
      • 1970-01-01
      • 2010-09-29
      • 2016-09-15
      • 2016-08-13
      • 2015-12-11
      • 2015-10-26
      • 2014-06-06
      相关资源
      最近更新 更多