gpt4 book ai didi

java - Android 监听来自库模块的事件

转载 作者:行者123 更新时间:2023-11-30 06:48:37 26 4
gpt4 key购买 nike

我正在使用 EventBus 在 Android 上创建一个库。

我正在我的图书馆中发布一个 Activity 。

EventBus.getDefault().post(new ConnectToDataEvent(Constants.AUTH,true));

应用程序模块已注册以监听事件。

 @Override
public void onStart() {
super.onStart();
EventBus.getDefault().register(this);
}

@Override
public void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}

订阅方法:

@Subscribe(threadMode = ThreadMode.MAIN)
public void onMessageEvent(ConnectToDataEvent event) {

loginonClick();
};

我正在接收

No subscribers registered for event

这是在库中使用的正确方法还是根本不可能?

感谢任何帮助。

最佳答案

No subscribers registered for event

这通常是因为您的 Activity 不再可见,因此 onStop() 已被调用并且 EventBus 已被取消订阅。

您需要删除 onStop() 部分,并尝试将取消注册部分移至 onDestroy():

@Override
public void onDestroy() {
EventBus.getDefault().unregister(this);

super.onDestroy();
}

关于java - Android 监听来自库模块的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43254845/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com