2

最近我开始了解 EventBus 库。基本上,我的用例围绕服务和活动展开。

Service 用于跟踪 BLE 连接的变化。

Activity 用于向 UI 报告该连接状态。

我怎样才能使用库实现相同的目标..

4

1 回答 1

4

在 Activity 的onResume方法中,注册事件:

EventBus.getDefault().register(this);

并取消注册onPause

EventBus.getDefault().unregister(this);

当服务运行并获取有关 BLE 的信息时,通过 EventBus 发送此信息:

BLEInfo bleInfo = new BLEInfo(... // create some kind of object to aggregate the info about ble connection
EventBus.getDefault().post(bleInfo);

最后,实现活动获取信息的行为:

public void onEvent(BLEInfo bleInfo) {
    // update your UI based on bleInfo
}
于 2015-10-15T11:39:47.047 回答