Create Custom Notification in Android.

By | January 31, 2016

This demo explains how you can create a Custom Notification in Android old and New versions.

The notification appears expanded in Versions > 16.

Custom Notification Android

Let’s jump into the code…

Below is the MainActivity that creates the notification.



import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.widget.RemoteViews;

import java.text.DateFormat;
import java.util.Date;

public class MainActivity extends Activity {

private void createNotification() {
// BEGIN_INCLUDE(notificationCompat)
NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
// END_INCLUDE(notificationCompat)

// BEGIN_INCLUDE(intent)
//Create Intent to launch this Activity again if the notification is clicked.
Intent i = new Intent(this, MainActivity.class);
PendingIntent intent = PendingIntent.getActivity(this, 0, i,
// END_INCLUDE(intent)

// BEGIN_INCLUDE(ticker)
// Sets the ticker text

// Sets the small icon for the ticker
// END_INCLUDE(ticker)

// BEGIN_INCLUDE(buildNotification)
// Cancel the notification when clicked

// Build the notification
Notification notification =;
// END_INCLUDE(buildNotification)

// BEGIN_INCLUDE(customLayout)
// Inflate the notification layout as RemoteViews
RemoteViews contentView = new RemoteViews(getPackageName(), R.layout.notification);

// Set text on a TextView in the RemoteViews programmatically.
final String time = DateFormat.getTimeInstance().format(new Date()).toString();
final String text = getResources().getString(R.string.collapsed, time);
contentView.setTextViewText(, text);

/* Workaround: Need to set the content view here directly on the notification.
* NotificationCompatBuilder contains a bug that prevents this from working on platform
* versions HoneyComb.
* See
notification.contentView = contentView;

// Add a big content view to the notification if supported.
// Support for expanded notifications was added in API level 16.
// (The normal contentView is shown when the notification is collapsed, when expanded the
// big content view set here is displayed.)
if (Build.VERSION.SDK_INT >= 16) {
// Inflate and set the layout for the expanded notification view
RemoteViews expandedView =
new RemoteViews(getPackageName(), R.layout.notification_expanded);
notification.bigContentView = expandedView;
// END_INCLUDE(customLayout)

// START_INCLUDE(notify)
// Use the NotificationManager to show the notification
NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
nm.notify(0, notification);
// END_INCLUDE(notify)

protected void onCreate(Bundle savedInstanceState) {

* Create and show a notification with a custom layout.
* This callback is defined through the ‘onClick’ attribute of the
* ‘Show Notification’ button in the XML layout.
* @param v
public void showNotificationClicked(View v) {


You can download the complete Android Studio Source Code from here..

Send your comments to

One thought on “Create Custom Notification in Android.

  1. Ajit Kumar Choudhary

    how can send notification from one Android device to Another Device By using Firebase Server


Leave a Reply

Your email address will not be published. Required fields are marked *