客户反馈一个老项目,智利时区快了一个小时,分析发现只有一个时区,正确的应该是根据月份的变化,会出现2个时区。。
对比好的机器,结果如下:
1:我看了T3_7.1的机器,当改变日期的时候,智利的时区会发生变化,例如:GMS-03:00的时候提示为:智利夏令时间 GMS-04:00的时候提示为:智利标准时间。
2:但是T3_6.0的项目,当改变日期的时候,智利的时区一直都不会变化,一直都是GMS-03:00 提示为:智利标准时间
3:可能T3.6.0没有考虑夏令时吧,或者是时区没有更新
尝试修改:
icu下面还有一些txt文件,例如zoneinfo64.txt这个文件时区信息。修改后还是没有效果。
原因:这个是自动生成的,应该是类似时区说明的一个文件。所以该了用处不大。
在android/bionic/libc/tools/zoneinfo中执行 update-tzdata.py ,在联网的情况下应该能更新最新的tzdata。
最终的解决方法:
这个夏令时是在不断变化的,需要定期更新zone info。
你们可以找一下目前最新的tzdata,放到android\bionic\libc\zoneinfo中。
也可以将T3 Android7.1的android\bionic\libc\zoneinfo\tzdata放到6.0对应的目录中,目前来看7.1的是较新的。