【发布时间】:2017-05-01 15:38:55
【问题描述】:
我已经使用AlarmManager 设置了闹钟,并通过timePicker 传递了时间。
我想在给定时间设置闹钟,但如果(我要设置的)时间已过,那么闹钟立即触发。
示例:- 如果当前时间是晚上 9:00,我将闹钟设置为晚上 7:00,那么闹钟会立即触发。
下面是我的代码
public void startAlarm(Calendar c, int id){
Toast.makeText(this, "Alarm in on", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(this,AlarmReciever.class);
intent.putExtra("id",id);
//int _id = (int)System.currentTimeMillis();
PendingIntent pendingIntent = PendingIntent.getBroadcast(this,id,intent,PendingIntent.FLAG_ONE_SHOT);
alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(), 1000*60,pendingIntent);
//alarmManager.set(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),pendingIntent);
}
如果我们设置的闹钟时间已过,如何控制闹钟的触发?
【问题讨论】:
标签: android service alarmmanager repeatingalarm