• 请不要在回答技术问题时复制粘贴 AI 生成的内容
aptx4689
V2EX  ›  程序员

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

  •  
  •   aptx4689 · Mar 25, 2020 · 6839 views
    This topic created in 2414 days ago, the information mentioned may be changed or developed.

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

    Dl43HmbXgAIwKW5.jpg

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

    1.png

    伪代码:

    - (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]
        }
    }
    

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

    31 replies  •  2020-03-26 14:17:19 +08:00
    Cavolo
    Cavolo
    Mar 25, 2020 via iPhone❤️3
    1
    致敬 Apple
    eic
    eic
    Mar 25, 2020
    2
    可是你有没有想过这有没有可能是故意写死的呢
    syuraking
    syuraking
    Mar 25, 2020
    3
    貌似我的谷歌版淘宝没看到这奇葩的提示
    wwqgtxx
    wwqgtxx
    Mar 25, 2020 via iPhone
    4
    @syuraking 只有 ios 版本才有的 bug
    littlewing
    littlewing
    Mar 25, 2020
    5
    因为大家都工作不饱和
    qiyuey
    qiyuey
    Mar 25, 2020
    6
    这东西都是构建服务自动生成的,把测试包误传罢了
    melonrice
    melonrice
    Mar 26, 2020
    7
    @qiyuey 据我所知直到预发布环境的正式包都可以是构建机自动生成的,那么问题来了,淘宝的构建机咋会构建一个测试包自动传到预发布环境去并且没检查就发布了。我以为大公司每个环节都有检查......
    ottawa8821
    ottawa8821
    Mar 26, 2020
    8
    尴尬了,
    123444a
    123444a
    Mar 26, 2020 via Android
    9
    男人也用淘宝?
    imhd
    imhd
    Mar 26, 2020 via Android
    10
    @123444a 那不然用 PDD ?🐶
    MarginK
    MarginK
    Mar 26, 2020
    11
    嘿嘿,这就是反编译吗,好厉害的样子啊,全部变成 C 的样子了,runtime 消息传递也出来了,

    出现了什么阴谋论吗?为什么要写死啊?
    janxin
    janxin
    Mar 26, 2020
    12
    @wwqgtxx 只有 iOS 发错包了吧
    davichi2009
    davichi2009
    Mar 26, 2020❤️1
    13
    @MarginK 据说阿里内部绩效分 3.25 是个要被干掉的节奏,然后某位 iOS 程序员被打了 3.25
    MarginK
    MarginK
    Mar 26, 2020
    14
    @davichi2009
    原来如此,如果是真的话,同身为 iOSer,希望那哥们加油。
    learningman
    learningman
    Mar 26, 2020
    15
    @123444a 不然用啥
    fancy111
    fancy111
    Mar 26, 2020
    16
    我还以为真有人反编译淘宝来查代码问题呢,原来是之前苹果的。
    那你也不能断定这次就是这样的,话说更新提示为什么要写死在程序?是推送不好用吗?
    jackchao7432
    jackchao7432
    Mar 26, 2020
    17
    @fancy111 你把楼主写的看完了吗?就是反编译了啊
    ezrealinxh
    ezrealinxh
    Mar 26, 2020❤️1
    18
    看来这才是和苹果深度合作啊, 张小🐲好好看好好学
    fancy111
    fancy111
    Mar 26, 2020
    19
    @jackchao7432 看到了,那还是开发人员的错,325 跑不了。
    Torpedo
    Torpedo
    Mar 26, 2020
    20
    话说这个不能 js 打个 path 修复一下么?
    jackchao7432
    jackchao7432
    Mar 26, 2020
    21
    @Torpedo 前提是得支持啊
    Torpedo
    Torpedo
    Mar 26, 2020
    22
    @jackchao7432 为啥不支持?
    popesaga
    popesaga
    Mar 26, 2020
    23
    这是流程出错了,测试包发到正式渠道上了。日期写死应该是每次构建的时候都会写的,并不是问题关键。就是这谜一样的发错包,总之至少有个哥们得背锅,甚至可能是几个。三月妖孽多啊,印象中阿里几次大故障都发生在三月。
    noisywolf
    noisywolf
    Mar 26, 2020
    24
    同学,你写的伪代码有错,提示写反了,而且警告的时候没有 kill
    yjxjn
    yjxjn
    Mar 26, 2020
    25
    @qiyuey 即使拿 devops 做的话,关键你从测试环境 promote 到 prod 环境,不都手动么?不怕自动 push 过去传错么?
    18758036350
    18758036350
    Mar 26, 2020
    26
    这么简单的问题,淘宝会还这么久解决不了吗?好像淘宝那边搞了好久处理不了吧。
    augustheart
    augustheart
    Mar 26, 2020
    27
    估计就是一条线上的人都疲了,从开发到 qa 集体不在状态……
    aptx4689
    aptx4689
    OP
    Mar 26, 2020
    28
    @noisywolf 确实写错了,意会一下吧

    @Torpedo 在入口点直接弹窗检测的,估计 js 引擎是之后才启动的,所以你会看到这个弹框闪一下就消失
    werty
    werty
    Mar 26, 2020
    29
    @popesaga 阿里一般是几月份评上年绩效呢, 如果也是三月的话......
    yukinomiu
    yukinomiu
    Mar 26, 2020
    30
    @werty 一般四月开始评, 这会还没开始呢. 所以报复那个谣言实属可笑.
    godall
    godall
    Mar 26, 2020
    31
    看来都没有代码评审这步操作,嘻嘻。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4860 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 76ms · UTC 09:24 · PVG 17:24 · LAX 01:24 · JFK 04:24
    ♥ Do have faith in what you're doing.