1
KingEngine 2018-10-22 20:01:27 +08:00
安卓标配
|
2
Raymon111111 2018-10-22 20:08:30 +08:00 2
时间是负的让人很为难
|
3
rocbomb 2018-10-22 20:11:48 +08:00
难道你想带着小米手机穿越到古代?
求带啊 |
4
SuperMild 2018-10-22 20:15:26 +08:00
一般来说可以了
|
5
keinx 2018-10-22 20:37:09 +08:00
android 是基于 linux 的
linux 的基准时间是 1970 年 1 月 1 日 0 点。 所以这和小米没有啥关系,也和 android 没有太大关系,这个要问 linus 当时为啥要把时间基准设置成 1970 年 1 月 1 日 0 点了 |
6
wohenyingyu02 2018-10-22 20:38:03 +08:00
@Raymon111111 时间应该是 unsigned int 把,负不了😄
|
7
ionblue 2018-10-22 20:41:49 +08:00 via Android 2
小米是因为安卓,安卓是因为 Linux,Linux 是因为 Unix,Unix 是因为丹尼斯,至于丹尼斯当年为什么这么干?那是因为他喵的本来只是想做个系统以方便移植游戏平时玩玩,谁会想到居然就流行起来了。
|
8
Raymon111111 2018-10-22 22:16:00 +08:00
@wohenyingyu02 不一定啊 也可以是简单的 int
|
9
xiaolanger OP 看了下 Android 上的 Google 日历貌似也是这样,苹果的就没事,不知道为什么要这样,不应该啊
|
10
no1xsyzy 2018-10-23 01:10:12 +08:00
所以 Linux 在转 64 位时间戳的时候为什么不加个后 32 位都是 0 的常数?时间戳转换就只需要改变这一个点
或者让时间戳变 signed,就可以表示 1970 之前的时间了 其实还是懒得变吧 |
11
tia 2018-10-23 01:22:39 +08:00
我这里怎么是 1901 年
|
12
Lonely 2018-10-23 02:09:26 +08:00 via iPhone
iOS 的能翻到公元前好几千年😂
|
14
dlsflh 2018-10-23 02:32:14 +08:00 via Android
@xiaolanger 你怎么看的?我能看到 1900.
|
15
weyou 2018-10-23 02:35:31 +08:00 via Android
@xiaolanger 谷歌日历是到 1900 年的
|
16
zwh2698 2018-10-23 03:22:37 +08:00 via Android
我猜和日历的实现有关,如果是查表法,所以就会限制,如果基于规则算就会没有多少关系,其实主要是阴历计算规则复杂,影响了阳历,为了加快计算我见过很多都是内置编年表,然后查。以上都是猜的
|
18
opengps 2018-10-23 08:27:22 +08:00
现在用的时间戳就是从 1970 年开始算的,很多系统都直接遵循 linux 的这个标准
1900 相当于一个人为的标准调整 |
19
opengps 2018-10-23 08:28:30 +08:00 1
做过跨时区业务的人都特别喜欢用时间戳,然后展示时候配合而时区计算实际时间
|
20
TheBladeDancer 2018-10-23 08:42:25 +08:00
@ShareDuck 十月份名单加急处理,把你安排上
|
21
shakoon 2018-10-23 08:47:12 +08:00
三棒手机表示日历最小日期是 1902 年 1 月 1 日
|
22
0312birdzhang 2018-10-23 08:50:56 +08:00 via iPhone
@ionblue 被程序耽误的电竞玩家
|
23
passerbytiny 2018-10-23 09:01:43 +08:00
以上说得都不对。时间值的存储格式主流有三种情况:年月日时分秒毫秒分别以单独的字节表示值然后组合;以 1970 年 1 月 1 日零点零分零秒为基准的秒数 /毫秒数 /浮点数;以 1900 年 1 月 1 日零点零时零分为基准的浮点数。但是请注意,三种存储方式都是允许负数的。并且 java.util.date 以及后继类都没有限制时间范围,故可以认为时间范围是无穷的。
所以这锅 UNIX 时间戳、android、java 都不能背,只能是开发人员背,因为他们懒,根本没开发日历,而是只使用系统自带的日历。(与单纯的时间相比,日历复杂多了)。 |
24
lilue 2018-10-23 09:07:33 +08:00
IOS,我给翻到了 18 年,2000 年前
|
25
cherrypi 2018-10-23 09:10:52 +08:00 via Android
为啥我的小米 6 支持到 1901 年 1 月 1 日?
|
26
secsilm 2018-10-23 09:16:15 +08:00
楼主什么手机哪个系统版本?我这米 6 MIUI 10 最新开发版能到 1901.1.1
|
27
em2046 2018-10-23 09:17:22 +08:00
ios 日历在 1583 年之前也无法显示年份了
翻到 1583 之前,关闭程序,然后日历 App 就打不开了。。。 |
29
sujin190 2018-10-23 09:21:49 +08:00 2
日历和时间戳有啥关系?难道日历就不能另外数据结构?只能说 app 做的不行
|
30
ShareDuck 2018-10-23 09:28:49 +08:00
@TheBladeDancer #20 你等一下,我去开一下门,有快递。
|
31
JavaFirstMaster 2018-10-23 09:38:25 +08:00
@daigouspy 求求你别秀了,十月份名额满了
|
32
tourist2018 2018-10-23 10:36:16 +08:00
系统自带吧 而且从 PM 角度看 1970 年以前确实没啥用处 毕竟智能手机才出来几年
|
35
fffang 2018-10-23 12:31:34 +08:00
你们这么一说日历 app 全是 bug ?
|
37
ericv 2018-10-23 13:03:24 +08:00
只能说。。。你不是程序员吧
|
38
xiaolanger OP |
39
xiaolanger OP @dlsflh #14
@secsilm #26 @weyou #15 我 google 日历我是通过之前的一个备用机看的,可能版本太老了吧 @passerbytiny #23 我也纳闷呢,跟时间戳能有直接关系? 还有扯 Linux Unix 的。。。还不让查几十年前的日期了? |
40
xiaolanger OP 真是,楼上各位扯时间戳的,调戏的除外,剩下的有一个算一个,是不是真的思维局限了?
|
41
dinghmcn 2018-10-23 13:53:27 +08:00 via Android
想想 c 是什么时候发明的,那时候为了节省内存选择近的时间作为起点;农历是查表,未来的具有不确定性
|
42
xiaolanger OP @dinghmcn #41 但这不是小米日历程序只能选择 1970 年之后的理由吧
|
43
ericv 2018-10-23 14:23:31 +08:00
@xiaolanger 表激动,并无此意。。。
|
44
xiaolanger OP @ericv #43 我代表拍黄片的放下了手中的刀
|
45
leexy 2018-10-23 15:03:17 +08:00
|
46
weyou 2018-10-23 15:14:45 +08:00
只能说开发人员偷懒了, 直接用 timestamp 转换成日期,就是图个方便嘛
|
47
RobertYang 2018-10-23 15:17:56 +08:00 via Android
小米日历能到 1901 年啊。。。
|
48
xiaolanger OP @RobertYang #47 同一个世界,不同的小米
|
49
pipilu112 2018-10-23 22:27:11 +08:00 via Android
是为了阴历啊
|
52
alfredsun 2018-10-25 16:32:19 +08:00
@xiaolanger 欧版 Mix2s MIUI10 只到 1970 年。。
|
53
xiaolanger OP @alfredsun #52 看来确实是小米的问题了!
|