import
android.content.BroadcastReceiver;
import
android.content.Context;
import
android.content.Intent;
import
android.content.IntentFilter;
import
android.os.Bundle;
import
android.view.View;
import
android.widget.Button;
import
android.widget.TextView;
import
androidx.appcompat.app.AppCompatActivity;
import
androidx.localbroadcastmanager.content.LocalBroadcastManager;
public
class
MainActivity
extends
AppCompatActivity {
private
TextView headingTV;
private
Button sendBroadCastBtn;
private
BroadcastReceiver broadcastReceiver =
new
BroadcastReceiver() {
@Override
public
void
onReceive(Context context, Intent intent) {
String message = intent.getStringExtra(
"message"
);
headingTV.setText(message);
}
};
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
headingTV = findViewById(R.id.idTVHeading);
sendBroadCastBtn = findViewById(R.id.idBtnStartBroadCast);
LocalBroadcastManager.getInstance(
this
).registerReceiver(broadcastReceiver,
new
IntentFilter(
"custom-action-local-broadcast"
));
sendBroadCastBtn.setOnClickListener(
new
View.OnClickListener() {
@Override
public
void
onClick(View v) {
Intent intent =
new
Intent(
"custom-action-local-broadcast"
);
intent.putExtra(
"message"
,
"Welcome \n to \n Geeks For Geeks"
);
LocalBroadcastManager.getInstance(MainActivity.
this
).sendBroadcast(intent);
}
});
}
}