我正在使用广播接收器将数据发送到活动和片段。该数据主要用于信息/显示目的或激活片段/活动中的某些代码。
使用事件总线将数据直接获取到片段中与仅从主机活动中点击片段中的方法以发送数据/激活代码的优点/缺点是什么?
这是非事件总线方式....
public class loqooBroadcast extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals("tv.SCENE")) {
try {
message = (JSONObject)
new JSONTokener(intent.getStringExtra("message")).nextValue();
sceneId = message.getString("scene_sceneid");
if (sceneId == lastSceneId){
return;
}
channel = message.getString("channel");
args.putString("json", message.toString());
} catch (JSONException e) {
}
lastSceneId = sceneId;
pushToFeedFromActivity(message);
}
意图来自一个服务,它只是一个来自外部的 json 消息。
我应该通过事件总线将消息从服务发送到其预期目的地(片段)还是不理会?