问题标签 [greenrobot-eventbus]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Fragments 和 EventBus 的空指针异常
我已经通过各种方法来完成这个项目,最终选择了 Green Robot 的 EventBus。我与此相关的第二个问题在这里:-活动通信的多个片段。
我被引导到那里的 Event Bus 路线。我已经加入了适当的图书馆,我认为我非常接近让它发挥作用。在包含
我相当肯定它,因为我没有正确注册 eBus。我知道 Fragment 没有这样的上下文,但我也尝试使用 getActivity() 也无济于事。我在下面发布了 MainActivity、CoreFragment 和 LogCat。如果有人可以提供帮助,我将不胜感激。这一直持续,断断续续近一个月!
这是片段代码:
我尝试了各种排列方式,例如 eBus.register(this);、eBus.register(this, String.Class);、eBus.register(getActivity()); 等等。这是按下按钮 1 时的 LogCat:-
我尝试过的所有各种方法都编译得很好,没有错误,但每次按下屏幕上的按钮时都强制关闭。请问有人有什么想法吗??谢谢你。
android - 使用 GreenRobot EventBus 处理事件
我刚刚开始查看 GreenRobot 的Android 的EventBus并且对线程有疑问。
我有一个长时间运行的进程,我想在后台线程上运行,完成后会更新 UI。
所以像:
显然updateUI()
不能在这里调用,因为它也会在后台运行。
那么处理这个问题的推荐方法是什么?从我的内部触发另一个onEventBackgroundThread()
将在 UI 线程上运行的事件?还是从长期运行的过程本身中触发它?还是有更好的模式?
android - GreenRobot EventBus 崩溃应用
我在整个应用程序中都使用了GreenRobot 的 EventBus,并且非常喜欢它。当我使用类似的方法时
并且doThis()
有一个像 NPE 这样的异常,应用程序不会崩溃,但 EventBus 会 Log.e() 异常。我可以配置 EventBus 让它真的让我的应用程序崩溃吗?这将使我更容易调试。
java - 使用 GreenRobot EventBus 从线程到线程通信
刚开始使用 GreenRobot 的EventBus。
只有一件事让我苦苦挣扎:如何在不同线程之间进行通信,以便 onEventXY() 方法实际上也在订阅的线程中执行。
似乎当您发布事件时,订阅者 onEvent 方法是从与发布事件的线程相同的线程调用的。那不是我想要的。
我希望能够使用 EventBus 进行线程间通信,以便实际接收到的事件对象由接收事件对象的线程中的 onEvent 方法处理。
那可能吗?
例子:
- 主线程
- 背景地线1
- 背景地线2
MainThread 在 EventBus 上发布一个事件,backGroundThread1 在其 onEventXY() 方法中接收它并在其自己的线程中执行代码(设置一些变量),backGroundThread2 在其 onEventXY 方法中接收它并在其自己的线程中执行代码(设置一些变量)。
如果这(目前)不可能,我注定要使用线程队列,比如 BlockingQueue,它更难实现。
有任何想法吗?
android - 如何使用greenrobot将数据传递给尚未初始化的活动或片段?
我尝试在活动和片段之间使用 greenrobot 传递数据,但我找不到合适的教程来详细说明如何做到这一点。根据我到目前为止所读到的内容,我写了一些类似的东西,但它不起作用。如何使用绿色机器人将数据传递给尚未初始化的活动或片段?
主要活动 :
Activity_Lessons:
这里永远不会调用事件处理程序。我做错了什么?
android - 在 EventBus 中监听事件的活动
我有一个活动,可以查看从异步 HTTP 请求接收到的对象。我正在使用 EventBus 发布带有对象的事件,并在活动中使用以下方法:
以前,我在其 onCreate() 方法中注册了活动的实例:
我知道 Android 中的 Activity 生命周期,我认为我使用 EventBus 的方式不正确,因为我正在注册一个可能被 Android 销毁的实例。我不热衷于注册具有这种行为的实例。
我可以使用每个 onEvent() 方法注册一个 Application 实例或一个对象,但我将编写一个 God 对象。
通过验证 getStickyEvent(MyObjectEvent) 是否为空然后注册活动来使用粘性事件的解决方案是什么?如果不为空,我会注册该活动。
我想知道在 Android 中将 EventBus 与视图一起使用的最佳方法是什么。提前致谢 ;)
android - Android 中使用 GreenRobot 事件总线的 IPC
我需要使用(greenrobot)EventBus 与远程服务通信。不幸的是,它似乎不适用于 IPC。查看代码,我也没有看到解决方法。任何帮助,将不胜感激 !
额外的问题 - 是否有任何其他支持 IPC 的 EventBus(适用于 Android)?
android - greenrobot Eventbus android中的事件是否排队?
由于 android 平板电脑通过 USB 接收来自 arduino 的数据。
在我的主要活动中,我有一个监听器,它在新数据到达 USB 时执行一个函数。
问题是该函数需要一段时间才能执行,但是一旦新数据到达,该函数就会再次被触发。我不断地以 115200 bps 从 USB 传输数据。
为了解决这个问题,我尝试使用 greenrobot 事件总线。当新数据到达时将发布一个新事件,并且该事件将由服务订阅。
我怀疑事件是否排队等待最后一个事件完全执行。
android - Android GreenRobot 的 EventBus 'register' 方法使我的应用程序崩溃
使用所描述的方法会导致我的应用程序崩溃,没有任何异常。什么可以做到这一点?
java - 普通 Java 应用程序上的 Greenrobot 事件总线
我一直在开发Android
应用程序并且一直在使用Greenrobot EventBus
,你可以在这里找到它,我真的很喜欢它。清洁、多功能且易于使用。
现在我正在创建一个 Java 应用程序,如果我使用事件总线,它会对我有所帮助。所以我考虑过使用Greenrobot EventBus
,但后来它是为使用而设计的Android
,我不确定在正常使用它时是否有任何问题Java Application
,毕竟它们都在Java
.
我知道其他事件总线库,比如Guava
and Akka
,但是因为我已经很熟悉了,Greenrobot EventBus
而且它在多线程方面非常灵活(这对我也有帮助),我正在考虑使用Greenrobot
并节省一些时间。