有人能给出一个很好的逻辑来设定一周中重复几天的警报吗?我每周都会用
alarmCalendar.set(Calendar.HOUR, AlarmHrsInInt);
alarmCalendar.set(Calendar.MINUTE, AlarmMinsInInt);
alarmCalendar.set(Calendar.SECOND, 0);
alarmCalendar.set(Calendar.AM_PM, amorpm);
Long alarmTime = alarmCalendar.getTimeInMillis();
Intent intent = new Intent(Alarm.this, AlarmReciever.class);
intent.putExtra("keyValue", key);
PendingIntent pi = PendingIntent.getBroadcast(Alarm.this, key, intent, PendingIntent.FLAG_UPDATE_CURRENT);
am.setRepeating(AlarmManager.RTC_WAKEUP, alarmTime, 7*1440*60000 , pi); 报警触发准时,7天后自动触发。
但我的要求是,我想选择的日子,而不是仅仅7天。
就像每周一,星期二,星期四上午9点一样-警报应该会自动触发。我该如何在setRepeating中这样做呢?
有人能帮我解决这个问题吗?
谢谢!
发布于 2017-01-29 11:47:31
Intent intent1 = new Intent(getApplicationContext(),
NotificationReceiver.class);
PendingIntent pendingIntent1 = PendingIntent.getBroadcast(getApplicationContext(),
1,
intent1,
PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager1 = (AlarmManager)getSystemService(ALARM_SERVICE);
java.util.Calendar calendar1 = java.util.Calendar.getInstance();
calendar1.set(java.util.Calendar.DAY_OF_WEEK,
Calendar.MONDAY);
calendar1.set(java.util.Calendar.HOUR_OF_DAY,
22);
calendar1.set(java.util.Calendar.MINUTE,
8);
calendar1.set(java.util.Calendar.SECOND,
0);
alarmManager1.setExact(AlarmManager.RTC, calendar1.getTimeInMillis(), pendingIntent1);https://stackoverflow.com/questions/17894067
复制相似问题