flutterjunction.com
Broadcast Receiver
How Android apps listen to system-wide or app-specific events
flutterjunction.com
BroadcastReceiver
A BroadcastReceiver is a component that listens and responds to broadcast messages
(Intents) from the system or other apps.
BroadcastReceiver is used when your app needs to react to system-wide or app-wide
events, even when it’s not open or visible.
Purpose
â—Ź React to system events (e.g. charging, boot complete)
â—Ź Communicate between components
Analogy
Like a radio receiver that listens for specific channels (events)
flutterjunction.com
Types of Broadcasts
📣 1. System Broadcasts
â—Ź Sent by Android OS
â—Ź Example: BOOT_COMPLETED, BATTERY_LOW, SMS_RECEIVED
📣 2. Custom Broadcasts
â—Ź Sent by your own app or other apps
â—Ź Useful for app-to-app or component communication
flutterjunction.com
Creating a BroadcastReceiver
â—Ź Create a class extending BroadcastReceiver
â—Ź Override onReceive() method
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Broadcast received!", Toast.LENGTH_SHORT).show();
}
}
flutterjunction.com
Registering BroadcastReceiver
📍 Static Registration (Manifest)
<receiver android:name=".MyReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
flutterjunction.com
Registering BroadcastReceiver
📍 Dynamic Registration (in Activity)
MyReceiver receiver = new MyReceiver();
IntentFilter filter = new IntentFilter(Intent.ACTION_AIRPLANE_MODE_CHANGED);
registerReceiver(receiver, filter);
📍 Unregister
unregisterReceiver(receiver);
flutterjunction.com
Sending Custom Broadcasts
Send a broadcast
Intent intent = new Intent("com.example.MY_CUSTOM_ACTION");
sendBroadcast(intent);
Receive it in your receiver
<action android:name="com.example.MY_CUSTOM_ACTION" />

Broadcast receiver- How Android apps listen to system-wide or app-specific events.pptx