【发布时间】:2015-09-28 19:49:53
【问题描述】:
EventBus我可以使用这个库进行 Activity 到服务的通信吗?
我在我的应用程序中尝试过如下:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
EventBus.getDefault().register(this);
setContentView(R.layout.activity_music_player);
Intent serviceIntent=new Intent(MusicPlayerActivityTest.this,MusicPlayerServiceTest.class);
startService(serviceIntent);
EventBus.getDefault().post(new SetSongList(songArraList, 0));
}
@Override
protected void onDestroy() {
EventBus.getDefault().unregister(this);
super.onDestroy();
}
在我的服务onEvent 中调用
【问题讨论】:
-
发帖前你试过了吗?
-
是的,我试过了。但我收到一条错误消息:“订阅者类没有名为 onEvent 的公共方法”
-
嗯……那是另一回事。您应该发布一些代码和 logcat,以便我们可以帮助您修复它(如果可能)
-
你能解释一下如何使用它吗?
-
“我收到一条错误消息,提示“订阅者类没有名为 onEvent 的公共方法”——我们无法帮助您处理订阅者,除非您为订阅者发布代码。一般来说,是的,您可以使用greenrobot 的
EventBus从服务到活动进行通信(反之亦然)。有关示例,请参见 github.com/commonsguy/cw-omnibus/tree/master/EventBus/…。
标签: android android-activity android-service greenrobot-eventbus