无法在android中的AlarmManager中设置特定日期

时间:2012-05-26 12:46:07

标签: android notifications alarmmanager alarm

我有以下代码为date设置AlaramManager

    AlarmManager alarm = (AlarmManager)getSystemService(Service.ALARM_SERVICE);

    int mYear = 2012;
    int mMonth = 5;
    int mDay = 26;
    int mHour = 12;
    int mMinute = 34;

    Date dateNotif = new Date (mYear - 1900, mMonth, mDay, mHour, mMinute); 


    Long myDate = dateNotif.getTime();
    Long current = System.currentTimeMillis();

    Intent i = new Intent(getApplicationContext(),ShowNotificationService.class);
    PendingIntent pendingIntent = PendingIntent.getService(getApplicationContext(), 12345,i, 0);

    alarm.set(AlarmManager.RTC_WAKEUP, dateNotif.getTime(), pendingIntent);

当模拟器的时间为12:34时,通知

无效

1 个答案:

答案 0 :(得分:0)

我已设置今日日期和时间

Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, year);//2012
calendar.set(Calendar.MONTH, 4);// It start from 0-11 so use 4 instead of 5
calendar.set(Calendar.DAY_OF_MONTH, 26);                 
calendar.set(Calendar.HOUR_OF_DAY,9);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);

Intent i = new Intent(getApplicationContext(),ShowNotificationService.class);
PendingIntent pendingIntent = PendingIntent.getService(getApplicationContext(), 12345,i, 0);

alarm.set(AlarmManager.RTC_WAKEUP,calendar.getTimeInMillis(), pendingIntent);