【发布时间】:2013-12-07 12:37:35
【问题描述】:
我正在尝试在每个月的第一个星期四发出警报通知。
am.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(),AlarmManager.INTERVAL_DAY*30, sender);
我不能使用上面的代码,因为并非所有月份都有 30 天,有没有办法做到这一点?
这是否表示每个月的第一个星期四?
cal.set(Calendar.DAY_OF_WEEK, 5); // Thursday
cal.set(Calendar.DAY_OF_WEEK_IN_MONTH, 1); // Thursday
谢谢
编辑
private void createThursayScheduledNotification() {
Calendar calendar3 = Calendar.getInstance();
calendar3.set(Calendar.DAY_OF_WEEK, 5); // Thursday
calendar3.set(Calendar.DAY_OF_WEEK_IN_MONTH, 1); // First Thursday of
// Each Month
// Thursday
calendar3.set(Calendar.HOUR_OF_DAY, 9);
calendar3.set(Calendar.MINUTE, 0);
calendar3.set(Calendar.SECOND, 0);
calendar3.set(Calendar.AM_PM, Calendar.AM);
AlarmManager alarmMgr = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmMgr.set(AlarmManager.RTC_WAKEUP,
calendar3.getTimeInMillis(), pendingIntent3); // every first Thursday
createThursayScheduledNotification();
}
【问题讨论】:
标签: java android alarmmanager android-notifications android-alarms