android
안드로이드 브로드캐스트 사용하기.
노명규
2018. 12. 12. 10:08
보내는 곳
Intent intent = new Intent("action_key");
intent.putExtra("key", "value");
LocalBroadcastManager.getInstance(mContext).sendBroadcast(intent);
받는 쪽
1. 필터 등록
IntentFilter filter = new IntentFilter();
filter.addAction("test");
LocalBroadcastManager.getInstance(mContext).registerReceiver(mControlRecevier, filter);
2. 리시버 등록
private BroadcastReceiver mControlRecevier = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
//intent 유효성 여부 검사
if (intent == null || intent.getAction() == null) {
return;
}
if ("action_key".equals(intent.getAction())) {
textview.setText(intent.getSerializableExtra("key")+"");
}
}
};
- 필터는 온크레딧이나.. 한번 호출될 수 있는 위치에 놓고 리시버를 호출 해 놓으면 된다.