ADIT
ADIT

Reputation: 2428

How to set Reminder notification on Android?

i want to display reminder on selected date and time on notification bar of android from my application .But that one should be populated even without the application.Whenever My android devices booted up and one the selected time with/without my application it should display notification in specified time like alarm. please help me how to do this?.

I found some links about Alarm Manager,Notification manager. Give me the idea and some links otherwise sample snippet.

Upvotes: 0

Views: 5949

Answers (2)

Vineet Shukla
Vineet Shukla

Reputation: 24031

public static void notifyIcon(Context context){

NotificationManager notifier = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
Notification notification = new Notification(R.drawable.your_app_notification, "", System.currentTimeMillis());

/**
*Setting these flags will stop clearing your icon
*from the status bar if the user does clear all 
*notifications.
*/
    notification.flags |= Notification.FLAG_NO_CLEAR | Notification.FLAG_ONGOING_EVENT;
    RemoteViews contentView = new RemoteViews(context.getPackageName(), R.layout.custom_notification_layout);
    notification.contentView = contentView;

//If you want to open any activity on the click of the icon.

    Intent notificationIntent = new Intent(context, YourActivity.class);
    PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0);
    notification.contentIntent = contentIntent;

    notification.setLatestEventInfo(context, "title", null, contentIntent);
    notifier.notify(1, notification);

//To cancel the icon ...
    notifier.cancel(1);

}

Here is custom_notification_layout.xml

<?xml version = "1.0" encoding = "utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:padding="3dp" >

</LinearLayout>

Note: Don't forget to clear your app icon when appropriate If you set above flag.

Upvotes: 1

Sherif elKhatib
Sherif elKhatib

Reputation: 45942

Use this to add an alarm

Intent intent = new Intent(this, TheServiceYouWantToStart.class);
PendingIntent pending = PendingIntent.getService(this, 0, intent, 0);
AlarmManager alarm = (AlarmManager) this.getSystemService(Context.ALARM_SERVICE);
alarm.set(AlarmManager.RTC_WAKEUP, Time_To_wake, pending);

Upvotes: 1

Related Questions