Reputation: 990
Please guide me so that the alarm (mail sending) will compile again and provide me mail before 1 day of event occurring and then before 30 minutes of event occurring.
Thanks in Advance.
public class MailAlarm extends BroadcastReceiver{
NotificationManager nm;
public void onReceive(Context context, Intent intent) {
nm = (NotificationManager) context
.getSystemService(Context.NOTIFICATION_SERVICE);
//int iUniqueId = (int) (System.currentTimeMillis() & 0xfffffff);
String event = Mail_Fill_Details.Discripton;
String name = Mail_Fill_Details.Person_Name;
String mail =Mail_Fill_Details.mailString;
try {
GMailSender sender = new GMailSender("[email protected]", "xyz");
sender.sendMail("Reminder of "+event+" ("+name+")" ,
"REMINDER!! REMINDER!! REMINDER!! \n\n\nYou got a reminder about "+event+"("+name+") after 5 minutes\n\n\n",
"[email protected]",
mail);
} catch (Exception e) {
Log.e("SendMail", e.getMessage(), e);
}
Rest code is here...
Intent intent = new Intent(Mail_Fill_Details.this,
MailAlarm.class);
Bundle b12 = new Bundle();
b12.putString("serverresponse", Discripton);
b12.putString("serverresponse1", Person_Name);
b12.putString("serverresponce2", mailString);
intent.setAction("" + Math.random());
intent.putExtras(b12);
PendingIntent displayIntent = PendingIntent
.getBroadcast(Mail_Fill_Details.this,
iUniqueId, intent,
PendingIntent.FLAG_UPDATE_CURRENT);
alarmManager.set(AlarmManager.RTC_WAKEUP,
calendar.getTimeInMillis() - 300000,
displayIntent);
// alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,
// calendar.getTimeInMillis(), 20, displayIntent);
Upvotes: 1
Views: 162
Reputation: 34301
I think you should use setRepeating
method of AlarmManager
instead set
method.
am.setRepeating(type, triggerAtMillis, intervalMillis, operation);
Upvotes: 1