2

最近、EventBus Library の存在を知りました。基本的に、私のユースケースはサービスとアクティビティを中心に展開しています。

サービスは、BLE 接続の変更を追跡するために使用されます。

アクティビティは、その接続状態を UI に報告するために使用されます。

ライブラリを使用して同じことを達成するにはどうすればよいですか..

4

1 に答える 1

4

アクティビティの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 に答える