2013-02-07 43 views
2

我想了解当我安排一个闹钟时,使用Calendar类计算的时间,当夏令时被打时会发生什么? AlarmManager是否正确处理小时更改?根据我的测试,我没有看到Calendar课程添加夏令时。夏令时是如何处理的?我应该担心吗?

例子:
今天是3月9日,我使用下面的凌晨2点来计算我的报警时间为第二天3月10日的夏令时开始:

Calendar cal = Calendar.getInstance(); 

// set the time alarm should be triggered 
cal.set(Calendar.SECOND, 0); 
cal.set(Calendar.MINUTE, 30); 
cal.set(Calendar.HOUR_OF_DAY, 10); 
cal.add(Calendar.DAY_OF_WEEK, 1); 

long triggerTimeMs = cal.getTimeInMillis(); 

回答

0

我认为这个问题真的取决于您的手机设置。如果您打电话处理夏令时,那么您应该可以直接与电话时间进行比较而不必担心。

例如

BEFORE夏令:警报的时间T

夏令AFTER:时间T比较的时间是这样的手机,它会自动更新。

+0

是的,我的设备确实使用夏令时。问题或多或少是如何处理时间变化的操作系统?两件事情; 1.发生时间变化时,操作系统是否更新预定警报? 2.日历处理时间是否自动更改?从我的测试看来,它似乎没有。 – Jona

相关问题