[Service.java]
Intent intent = new Intent();
intent.setAction("sample");
intent.putExtra("timer_real", hms);
sendBroadcast(intent);
[Activity.java]
public void onResume() {
super.onResume();
IntentFilter filter = new IntentFilter();
filter.addAction("sample");
registerReceiver(sn_english, filter);
}
public void onPause() {
super.onPause();
unregisterReceiver(sn_english);
}
BroadcastReceiver sn_english= new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
String timer_real = intent.getStringExtra("timer_real");
textTimer.setText(timer_real);
}
};
The above code is composite to use BroadCast in Android Activity.
Like you can see, we send BR in Servive.java, and receive it in Activity.java
Fortunately, it works ordinarily, but I want use one more BR in this activity.
So, how can I use that? The second one is also send in Service.java and receive in Activity.java
Set a different action for your intent on the second sendBroadcast. Example:
Intent intent = new Intent();
intent.setAction("second_intent);
sendBroadcast(intent);
Then you can register your activity for that new action:
IntentFilter filter = new IntentFilter();
filter.addAction("sample");
filter.addAction("second_intent");
registerReceiver(sn_english, filter);
And in your onReceive() method, just do a if/else on the action:
if(intent.getAction().equals("sample"))
{
// first intent
}
else if(intent.getAction().equals("second_intent"))
{
// second intent
}