如何修改时区data文件

[Description]
Android时区信息是由data文件保存,KK之前的版本是三个文件(zoneinfo.dat, zoneinfo.idx,zoneinfo.version),KK之后只有一个文件(tzdata)。由于各国的时区信息是会变化的,例如2014年6月13日,俄罗斯宣布从2014年10月26日之后全国时区推后一小时,比如莫斯科之前是GMT+4,修改后是GMT+3;如某个时区去掉2015年永久取消夏令时;但是android中的该文件不会自动更新,所以测试过程中会遇到手机的时区信息显示不正确。这种情况下,就需要更新手机的时区信息文件。
[Solution]
一、下载tztada包
在网址ftp://ftp.iana.org/tz/releases/下载tzdata*.tar.gz,对于KK下载最新的即可,如果是KK之前的版本请下载2013年的版本。解压后拷贝到路径\bionic\libc\tools\zoneinfo下。找到时区所在文件,是按照城市所在洲命名的文件。
 1、夏令时(如Mexico在文件northamerica)
   # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
      Rule Mexico 1939 only - Feb 5 0:00 1:00 D
      Rule Mexico 1939 only - Jun 25 0:00 0 S
      Rule Mexico 1940 only - Dec 9 0:00 1:00 D
      Rule Mexico 1941 only - Apr 1 0:00 0 S
      Rule Mexico 1943 only - Dec 16 0:00 1:00 W # War
      Rule Mexico 1944 only - May 1 0:00 0 S
      Rule Mexico 1950 only - Feb 12 0:00 1:00 D
      Rule Mexico 1950 only - Jul 30 0:00 0 S
      Rule Mexico 1996 2000 - Apr Sun>=1 2:00 1:00 D
      Rule Mexico 1996 2000 - Oct lastSun 2:00 0 S
      Rule Mexico 2001 only - May Sun>=1 2:00 1:00 D
      Rule Mexico 2001 only - Sep lastSun 2:00 0 S
      Rule Mexico 2002 max - Apr Sun>=1 2:00 1:00 D
      Rule Mexico 2002 max - Oct lastSun 2:00 0 S
      红色字体1:00表示有夏令时,要加一小时;0表示不用加。前面的时间是执行夏令时的时间段。如果要求2014年开始每年4月1日到10月31日执行夏令时,其余时间取消夏令时可以新增如下2句:
      Rule Mexico 2014 max - Apr 1 2:00 1:00 D
      Rule Mexico 2014 max - Oct 31 2:00 0 S
 2、时区(如Moscow在文件europe)
     Zone Europe/Moscow 2:30:17 - LMT 1880
     2:30:17 - MMT 1916 Jul 3 # Moscow Mean Time
     2:31:19 Russia %s 1919 Jul 1 2:00
     3:00 Russia %s 1921 Oct
     3:00 Russia MSK/MSD 1922 Oct
     2:00 - EET 1930 Jun 21
     3:00 Russia MSK/MSD 1991 Mar 31 2:00s
     2:00 Russia EE%sT 1992 Jan 19 2:00s
     3:00 Russia MSK/MSD 2011 Mar 27 2:00s
     4:00 - MSK 2014 Oct 26 2:00s
     3:00 - MSK
  新增2014年10月26日之后执行GMT+3时区
二、 修改完成后需要执行脚本生成data文件,具体执行可以参考
   KK之前的版本:FAQ05710
   KK之后的版本:FAQ12532
三、关于俄罗斯时区的问题
   2014年6月13日俄罗斯宣布,从2014年10月26日之后俄罗斯所有的时区都推后一小时,如莫斯科时区从GMT+4变成GMT3,Sakhalin时区从GMT+11变成GMT+10.
   对于KK版本可以直接下载最新的tzdata直接使用脚本编译就行,如果是JB版本需要下载2013年版本,然后参考2014年最新版本中有关俄罗斯的修改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值