0
BroadcastReceiver 클래스에서이 코드를 가지고 있지만 왜 첫 번째 알림이 실행되지 않는지 이해할 수 없습니다. 주기를 제거하면 alarmmanager가 완벽하게 실행됩니다. 또한 값은 괜찮습니다 (나는 그것을 보여준 축배를 가지고 있습니다). "if"문제입니까?if 및 broadcastreceiver
CheckboxPreference = prefs.getBoolean("checkboxPref", true);
notify = prefs.getString("notify", "");
if (CheckboxPreference){
if (notify.equals("1")){
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal1.getTimeInMillis(), DateUtils.DAY_IN_MILLIS, morningAlarm);
}
if (notify.equals("2")){
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal1.getTimeInMillis(), DateUtils.DAY_IN_MILLIS, morningAlarm);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal3.getTimeInMillis(), DateUtils.DAY_IN_MILLIS, eveningAlarm);
}
if (notify.equals("3")){
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal1.getTimeInMillis(), DateUtils.DAY_IN_MILLIS, morningAlarm);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal2.getTimeInMillis(), DateUtils.DAY_IN_MILLIS, middleAlarm);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal3.getTimeInMillis(), DateUtils.DAY_IN_MILLIS, eveningAlarm);
}
}
코드에 문제가없는 것 같습니다. 그러나 if (notify.trim(). equals (...))'를 시도하거나'if()'블록에 들어가는 것을 어떻게 확인 했는가? –