Skip to main content

Broadcast receivers in Android - ABNHive

It responds to system-wide broadcast announcements. It used to display a persistent icon in the status bar of the device, vibrate, play a sound, flashlights, etc. to indicate to the user that something significant has happened in the background.


System Generated Events

The following table lists a few important system events.
  • android.intent.action.BATTERY_CHANGED - Sticky broadcast containing the charging state, level, and other information about the battery.
  • android.intent.action.BATTERY_LOW - Indicates low battery condition on the device.
  • android.intent.action.BATTERY_OKAY - Indicates the battery is now okay after being low.
  • android.intent.action.DATE_CHANGED - The date has changed.
  • android.intent.action.REBOOT - Have the device reboot.
  • android.intent.action.BOOT_COMPLETED - This is broadcast once after the system has finished booting.
  • android.intent.action.BUG_REPORT - Show activity for reporting a bug.
  • android.intent.action.CALL - Perform a call to someone specified by the data.
  • android.intent.action.CALL_BUTTON - The user pressed the "call" button to go to the dialer or other appropriate UI for placing a call.

Broadcast Receiver Example

In this sample application, a notification is generated when you change the system time. The notification when clicked leads the user to the Contacts. This is how the application works:

public class MyBroadcastReceiver extends BroadcastReceiver {
 
    private NotificationManager mNotificationManager;
    private int SIMPLE_NOTFICATION_ID;
 
    @Override
    public void onReceive(Context context, Intent intent) {
 
        mNotificationManager = (NotificationManager) context
                .getSystemService(Context.NOTIFICATION_SERVICE);
 
        Notification notifyDetails = new Notification(R.drawable.android,
                "Time Reset!", System.currentTimeMillis());
 
        PendingIntent myIntent = PendingIntent.getActivity(context, 0,
                new Intent(Intent.ACTION_VIEW, People.CONTENT_URI), 0);
 
        notifyDetails.setLatestEventInfo(context, "Time has been Reset",
                "Click on me to view Contacts", myIntent);
 
        notifyDetails.flags |= Notification.FLAG_AUTO_CANCEL;
        notifyDetails.flags |= Notification.DEFAULT_SOUND;
 
        mNotificationManager.notify(SIMPLE_NOTFICATION_ID, notifyDetails);
 
    }

- Aswin Bhim Nath

Comments

Popular posts from this blog

Linear Layout in Android - ABNHive

Linear Layout arranges other views either horizontally in a single column or vertically in a single row. It arranges its elements sequentially Attributes android: orientation —Used for arranging the controls in the container in horizontal or vertical order android:layout_width —Used for defining the width of a control android:layout_height —Used for defining the height of a control android:padding —Used for increasing the whitespace between the boundaries of the control and its actual content android:layout_weight —Used for shrinking or expanding the size of the control to consume the extra space relative to the other controls in the container android:gravity —Used for aligning content within a control android:layout_gravity —Used for aligning the control within the container Example <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"     android:layout_widt...

Android Application Components Activities, Services, Broadcast Recievers, Content Providers - ABNHive

Application components are the essential building blocks of Android app development.  Each component is an entry point through which the system or a user can enter your app. There are 4 types of components in android Activities Services Broadcast receivers Content providers Let's dive into the deep.  Activities This is a component that represents a single screen with a user interface or simply an entry point for interacting with the user. Example, an email app might have one activity that shows a list of new emails. Activities work together to form a cohesive user experience in the app. For example, clicking a button on the first screen might replace that screen with another screen containing other widgets, a web page, a movie, or text information. Activities are typically created by subclassing (extending) the Android class Activity.  click here   to know more about Activity. Services This runs in the background ...