如何在android中重复闹钟周日

ckp*_*tel 5 android alarmmanager android-alarms

我想在星期一到星期五发出警报.我的代码在这里

if (chk_weekday.isChecked()) {

                    int day = calNow.get(Calendar.DAY_OF_WEEK);
                    if (day == 2 || day == 3 || day == 4 || day == 5
                            || day == 6) {

                        alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,
                                calSet.getTimeInMillis(), 1 * 60 * 60 * 1000,
                                pendingIntent);

                    }
Run Code Online (Sandbox Code Playgroud)

有个主意.

ckp*_*tel 19

请试试这段代码.在我的应用程序中成功运行

if (chk_monday.isChecked()) {
                        forday(2);
                    } else if (chk_tuesday.isChecked()) {
                        forday(3);
                    } else if (chk_wednesday.isChecked()) {
                        forday(4);
                    } else if (chk_thursday.isChecked()) {
                        forday(5);
                    } else if (chk_friday.isChecked()) {
                        forday(6);
                    } else if (chk_sat.isChecked()) {
                        forday(7);
                    } else if (chk_sunday.isChecked()) {
                        forday(1);
                    }

public void forday(int week) {

        calSet.set(Calendar.DAY_OF_WEEK, week);
        calSet.set(Calendar.HOUR_OF_DAY, hour);
        calSet.set(Calendar.MINUTE, minuts);
        calSet.set(Calendar.SECOND, 0);
        calSet.set(Calendar.MILLISECOND, 0);

        alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,
                calSet.getTimeInMillis(), 1 * 60 * 60 * 1000, pendingIntent);
    }
Run Code Online (Sandbox Code Playgroud)

  • 删除"if {} else if {} .."只使用"if {} if {} ..."然后它应该设置闹钟多天.... :) (4认同)
  • 你每小时都在重复一遍.对于每周,公式为24*7*60*60*1000 (3认同)
  • 如果用户想要将警报设置超过一天,它将无法工作. (2认同)