Я использую широковещательные приемники для отправки данных в действия и фрагменты. Эти данные предназначены либо в первую очередь для информации/отображения, либо для активации некоторого кода во фрагменте/действии.
Каковы преимущества/недостатки использования шины событий для получения данных непосредственно во фрагмент по сравнению с простым вызовом метода во фрагменте из активности хоста для отправки данных/активации кода?
Это автобус без событий....
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, поступающее извне.
Должен ли я отправить сообщение из службы через шину событий в его предполагаемое место назначения (фрагменты) или оставить все в покое?