wipbssldo
V2EX  ›  Apple

发现 M1 芯片编译 iOS App 的 Bug

  •  
  •   wipbssldo · Jan 21, 2021 · 2828 views
    This topic created in 1957 days ago, the information mentioned may be changed or developed.

    直接上代码

    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
    let string = dateFormatter.string(from: Date())
    

    这段代码在 M1 芯片的 Mac mini 上编译后安装到 iPhone 、iPad 上,

    当这台 iPhone 设置为使用 12 小时制显示,string 会是 12 小时制的时间字符串并且末尾带 am/pm 字符。2021-01-21 5:00:00 pm

    当这台 iPhone 设置为使用 24 小时制显示,string 会是 24 小时制的时间字符串。2021-01-21 17:00:00

    但是同样的代码在 X86 芯片上编译后安装到 iPhone 、iPad 上,不管 iPhone 设置为 12 小时制还是 24 小时制,string 都是 24 小时制的时间字符串。2021-01-21 17:00:00

    • 系统版本 11.1
    • Xcode 版本 12.2,没有使用 Rosetta 打开
    • Swift 5.3
    5 replies    2021-01-23 18:52:03 +08:00
    movq
        1
    movq  
       Jan 22, 2021 via iPhone
    你是说 m1 芯片有 bug 还是 Intel 有 bug
    CommandZi
        2
    CommandZi  
       Jan 22, 2021
    @movq 应该是 m1 芯片有 bug,因为两个大写 H 表示以 24 小时制格式化
    LiuJQ
        3
    LiuJQ  
       Jan 22, 2021
    看着有点那意思,没写代码验证
    luolikon
        4
    luolikon  
       Jan 23, 2021
    这个是不是算默认行为的问题:app 和 os 听谁的
    Building
        5
    Building  
       Jan 23, 2021 via iPhone
    Local 打印一下?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5600 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 01:28 · PVG 09:28 · LAX 18:28 · JFK 21:28
    ♥ Do have faith in what you're doing.