deplives
V2EX  ›  macOS

开发 macOS app 真的是一种心智负担

  •  
  •   deplives · Sep 15 · 2117 views
    This topic created in 37 days ago, the information mentioned may be changed or developed.

    前几个月开发了个 macOS App 使用的 swift 6.3

    然后某一天改了一些代码后发现,发现 debug 可以构建,release 构建会失败

    变现为进行 release 构建的时候编译器直接崩溃。然后给我一阵排查,ai 也一阵排查,最后 codex 找到了 Swift Issue #90385

    嘿还真是和我的情况一模一样,原来还真是编译器 bug

    然后今天 升级了 macOS 27 xcode 也升级到了 27 swift 升级到了 6.4 然后就想起了上面这个问题,就给改回去了,然后重新编译,没问题了。然后,正当我准备提交代码,就又发现了不一样的地方

    这个是 macOS26 上编译后的 app 右键菜单

    这个是 macOS27 上编译后的 app 右键菜单

    我就好奇了,我的图标呢?我那么大的图标呢?这部分代码一行也没改啊,然后问了一下 AI

    AI 回复:代码里其实已经配置图标。查到原因是 macOS 27 默认会隐藏菜单中的符号图像;我会使用系统新增的显示偏好让它们显示出来,并用版本判断保留旧系统的现有行为。

    然后甩了我一个文档 macos-27-release-notes

    我真的无语了,然后又加了一段屎山一样的 if #available(macOS 27.0, *)

    item.image = NSImage(systemSymbolName: symbolName, accessibilityDescription: nil)
    if #available(macOS 27.0, *) {
        item.preferredImageVisibility = .visible
    }
    

    我现在真的很好奇,swift 的开发人员自己用不用 swift

    7 replies  •  2026-09-18 10:42:50 +08:00
    20015jjw
        1
    20015jjw  
       Sep 16
    很正常的 apple api 的设计这么多年了还是这样
    daxigua1te
        2
    daxigua1te  
       Sep 16
    版本判断这个太正常了,iOS app 开发的时候经常能看到一堆,特别是有历史沉淀的项目。
    noahhhh
        3
    noahhhh  
       Sep 16 via Android
    巧了我也遇到了
    pengzh1
        4
    pengzh1  
       Sep 16
    太真实了,大版本一升去年调好的今年又得重来
    neiltroyer849
        5
    neiltroyer849  
       Sep 16
    退回 26.6 的 xcode 可行吗?
    MindMindMax
        6
    MindMindMax  
       Sep 16
    27 beta2 之前还有本地网络访问的权限 bug ,害得我调了 1 天, 气死我了。Apple 品控太菜,
    jdcola
        7
    jdcola  
       Sep 18
    26 把所有菜单项都加上图标,被社区骂死,于是 27 又改回去了。所以可以认为 26 是一个前后不接的特殊垃圾版本。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5459 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 02:25 · PVG 10:25 · LAX 19:25 · JFK 22:25
    ♥ Do have faith in what you're doing.