可能重复:
Why is my android alarm manager firing instantly?
我有这个代码,它将调用警报通知
public static Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(System.currentTimeMillis());
cal.add(Calendar.HOUR_OF_DAY,hour);
cal.add(Calendar.MINUTE, min);
Intent intent = new Intent(this, OnetimeAlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, REQUEST_CODE, intent,0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis() , pendingIntent);
Toast.makeText(this, "Alarm set", Toast.LENGTH_LONG).show();
但是警报是立即发出的,它是在给定的一小时和几分钟后才发出的?
我应该在清单文件中添加什么吗?
最佳答案
使用当前时间设置警报。所以它会立刻开火。
检查API。http://developer.android.com/reference/android/app/AlarmManager.html#set%28int,%20long,%20android.app.PendingIntent%29
在这里,您可以将报警时间作为第二个参数。在你的情况下,这是实际时间。因此,您应该将要等待的时间加上您现在传入方法的时间。