A Broadcast receiver is an Android component which allows you to register for system or application events.
A receiver can be registered via the AndroidManifest.xml
file or dynamically via the Context.registerReceiver()
method.
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
//Your implementation goes here.
}
}
Here I have taken an example of ACTION_BOOT_COMPLETED
which is fired by the system once the Android has completed the boot process.
You can register a reciever in manifest file like this:
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<receiver android:name="MyReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED">
</action>
</intent-filter>
</receiver>
</application>
Now device gets booted, onReceive()
method will be called and then you can do your work (e.g. start a service, start an alarm).