美文网首页
记安卓新系统的时间系统的问题

记安卓新系统的时间系统的问题

作者: 晓晓罗 | 来源:发表于2021-03-26 23:20 被阅读0次

    之前做了一个可以查看指定日期的干支的APP,今晚突然有人发现日干对应不上日期了。(2021年3月26日是癸酉日,但是软件显示的却是甲戌日(明天的干支))
    我一开始以为是算法的问题,结果测试一下,算法没问题。
    然后我以为是时区问题,就把时间都设置为东八区。结果还是不行。
    我就纳闷了,去年发给别人的时候,为什么没有BUG。
    只能祭出日子打印算法了。
    结果让我很震惊,下面是我打印的log:

    I/System.out: 干支 --> 余数大于0算一天 ?3823113943000  343000.0 
     I/System.out: 干支1616767284000  -2206346659000 
     I/System.out: 干支2021-03-26 22:01:24  1900-01-31 22:01:24 
     I/System.out: 干支1616767284000  -2206346659000
     I/System.out: 干支2021-03-26 22:01:24  1900-01-31 22:01:24
    
    image.png

    后面那个日期 和时间戳明显对不上。
    然后我调用了getTimezoneOffset()发现,后面的居然是485,前面的是480。好家伙,足足差了5分钟。我以为谷歌这是在针对我大清,把1912年的时间都搞了。经过一番测试,1901年1月1日,时差开始变成了480。看来是1901年之前的时间都是有问题的。

    最后,我改变了时间的基点,选择了国庆节作为基点进行日干的计算,纪念我们伟大的共和国。

    相关文章

      网友评论

          本文标题:记安卓新系统的时间系统的问题

          本文链接:https://www.haomeiwen.com/subject/dfxehltx.html