Android TimeZone.getRawOffset()不';t似乎在安卓4.2中工作

Android TimeZone.getRawOffset()不';t似乎在安卓4.2中工作,android,timezone,Android,Timezone,时区限制值的格式为“GMT+02:00:00” 以前的代码是从2.2到4.1运行的,没有问题 现在使用4.2,无论时区在UTC之前还是之后,它都会返回等于0的偏移量 任何想法或任何其他人都看到了这一点。在检查时区的源代码后,4.2中发生了重大变化。该类开始强制执行只需要小时和分钟的正则表达式。提供秒数将导致正则表达式模式匹配器失败,然后返回null 我这边的解决方案是检查服务器上的值几秒钟,如果指定了值,则将其删除。因为我没有任何控制权,所以从服务器返回的值是 我希望如果其他人遇到这个问题,这会

时区限制值的格式为“GMT+02:00:00”

以前的代码是从2.2到4.1运行的,没有问题

现在使用4.2,无论时区在UTC之前还是之后,它都会返回等于0的偏移量


任何想法或任何其他人都看到了这一点。

在检查
时区的源代码后,4.2中发生了重大变化。该类开始强制执行只需要小时和分钟的正则表达式。提供秒数将导致正则表达式模式匹配器失败,然后返回null

我这边的解决方案是检查服务器上的值几秒钟,如果指定了值,则将其删除。因为我没有任何控制权,所以从服务器返回的值是


我希望如果其他人遇到这个问题,这会有所帮助。

在这种情况下,getRawOffset比getOffset更可取?实际上,我使用时区对象的目的就是简化数学,并与将来使用命名时区保持前向兼容性,因为时区限制是从服务器检索的。
TimeZone tz = TimeZone.getTimeZone(TimeZoneString);
timeZoneOffsetms = tz.getRawOffset();