Сегодня в США началось дневное энергосбережение, которое по состоянию на сегодняшний день.
Длительность дня равна 24 часам, что делает неправильный расчет на сегодня. Я вижу проблему в следующем коде, который используется для сравнения дней.
Простой трюк будет примерно таким:
Calendar c = Calendar.getInstance(); c.setTime(new Date()); int h = c.get(Calendar.HOUR); final int DAY = 24 * 60 * 60000; Date temp = new Date(endDate1.getTime() + DAY); c.setTime(temp); int dh = c.get(Calendar.HOUR); if(dh != h) { // moving between daylight saving time if(dh > h) { // out of daylight saving } else { // into daylight saving } }