I have created a AlarmReceiver class which is used as broadcast receiver for alarm. The issue is that I need to send some values from the class which is setting the alarm to the broadcast receiver class.
setAlarmManager.java
Intent i = new Intent(mContext, AlarmReceiver.class);
i.putExtra(KEY_ROWID, (long)taskId);
PendingIntent pi = PendingIntent.getBroadcast(mContext,taskId_int,i,PendingIntent.FLAG_ONE_SHOT);
mAlarmManager.set(AlarmManager.RTC_WAKEUP, when.getTimeInMillis(), pi);
I need to get the KEY_ROWID from intent in alarmreceiver class. How can I do that? The AlarmReceiver class is shown below.
public class AlarmReceiver extends BroadcastReceiver {
public static final String ALARM_ALERT_ACTION ="com.android.alarmclock.ALARM_ALERT";
public static final String ALARM_INTENT_EXTRA = "intent.extra.alarm";
@Override
public void onReceive(Context context, Intent intent) {
//Here I need the values from intent using bundle or anything...
}
}
You can use :
public class AlarmReceiver extends BroadcastReceiver {
public static final String ALARM_ALERT_ACTION ="com.android.alarmclock.ALARM_ALERT";
public static final String ALARM_INTENT_EXTRA = "intent.extra.alarm";
@Override
public void onReceive(Context context, Intent intent) {
String keyid = intent.getStringExtra("KEY_ROWID");
}
}