我设置了一个AlarmManager,它会在一定时间后反复报警。我使用了以下代码。
Intent intent = new Intent(ViewDoughnut.this, NotificationMessage.class);
PendingIntent sender = PendingIntent.getBroadcast(ViewDoughnut.this, 0, intent,PendingIntent.FLAG_CANCEL_CURRENT);
AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
am.setRepeating(AlarmManager.RTC_WAKEUP,nextAlarmTime, alarmInterval, sender);
现在,为了在闹钟时间执行正确的工作,我创建了以下扩展BroadcastReceiver的类。现在,我需要在该类中执行Alarm工作时的毫秒时间。怎么弄?
public class NotificationMessage extends BroadcastReceiver {
// Display an alert that we've received a message.
// @Override
public void onReceive(Context context, Intent intent) {
// here I need the time when the alarm should execute.
}
}
在这里我想补充一点,系统时间对我来说不起作用,因为如果设备在闹钟时关闭,它会在设备开启后执行。但是我需要它应该执行的时间。
答案 0 :(得分:0)
您可以创建一个派生自Application的类,该类包含所有全局变量。然后设置一个长变量来保持初始化警报之前的时间