淘宝这次提示更新跟 iOS 12 beta 的 bug 其实是一样的,日期直接写死在程序判断里面

2020-03-25 21:19:00 +08:00
 aptx4689

拓展阅读:2018 年 8 月 31 日,iOS 12 beta 疯狂弹窗提示"A new iOS update is now available. Please update from iOS 12 beta.",但吃瓜网友点进设置之后发现啥也没有,其实是 Apple 的程序员直接硬编码了 beta 更新时间:

这次的淘宝也一样。 如下图:

伪代码:

- (void)check{
    NSDateFormatter* dateFormatter = [[NSDateFormatter alloc]init];
    NSLocale* locale = [[NSLocale alloc]initWithLocaleIdentifier:@"en_US"];
    [dateFormatter setLocale:locale];
    
    NSString* dateString = @"Mar 13 2020";
    NSDate* baseDate = [dateFormatter dateFromString:dateString];

    NSTimeInterval currentDateTimeInterval = [[NSDate date] timeIntervalSince1970];
    NSTimeInterval baseDateTimeInterval = [baseDate timeIntervalSince1970];
    if (currentDateTimeInterval - baseDateTimeInterval >= 15 * 24 * 60 * 60){
        UIAlertView* alertView = [[UIAlertView alloc]initWithTitle:@"您使用的程序是测试版本,目前已经过期,请更新到最新版本"
                                                           message:NULL
                                                          delegate:nil
                                                 cancelButtonTitle:@"确定"
                                                 otherButtonTitles: nil];
        [alertView show];
        [kill];
        
    } else if (currentDateTimeInterval - baseDateTimeInterval >= 12 * 24 * 60 * 60) {
        //"您使用的程序是内测版本,将于当地时间%@到期,到期后将无法使用,请尽快下载最新版本"
        [kill]
    }
}

这么简单的一件事为啥总有人喜欢扯阴谋论?不是很懂,从什么时候开始几张微信聊天记录和朋友圈都能当作证据了?就没人会真正动手去看看么,大家好歹也是个程序员吧?

5599 次点击
所在节点    程序员
31 条回复
jackchao7432
2020-03-26 10:26:41 +08:00
@Torpedo 前提是得支持啊
Torpedo
2020-03-26 10:28:29 +08:00
@jackchao7432 为啥不支持?
popesaga
2020-03-26 10:29:27 +08:00
这是流程出错了,测试包发到正式渠道上了。日期写死应该是每次构建的时候都会写的,并不是问题关键。就是这谜一样的发错包,总之至少有个哥们得背锅,甚至可能是几个。三月妖孽多啊,印象中阿里几次大故障都发生在三月。
noisywolf
2020-03-26 11:00:43 +08:00
同学,你写的伪代码有错,提示写反了,而且警告的时候没有 kill
yjxjn
2020-03-26 11:25:20 +08:00
@qiyuey 即使拿 devops 做的话,关键你从测试环境 promote 到 prod 环境,不都手动么?不怕自动 push 过去传错么?
18758036350
2020-03-26 11:30:07 +08:00
这么简单的问题,淘宝会还这么久解决不了吗?好像淘宝那边搞了好久处理不了吧。
augustheart
2020-03-26 11:31:56 +08:00
估计就是一条线上的人都疲了,从开发到 qa 集体不在状态……
aptx4689
2020-03-26 11:37:31 +08:00
@noisywolf 确实写错了,意会一下吧

@Torpedo 在入口点直接弹窗检测的,估计 js 引擎是之后才启动的,所以你会看到这个弹框闪一下就消失
werty
2020-03-26 14:05:14 +08:00
@popesaga 阿里一般是几月份评上年绩效呢, 如果也是三月的话......
yukinomiu
2020-03-26 14:15:48 +08:00
@werty 一般四月开始评, 这会还没开始呢. 所以报复那个谣言实属可笑.
godall
2020-03-26 14:17:19 +08:00
看来都没有代码评审这步操作,嘻嘻。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/656194

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX