开源媒体播放器 IINA 发布 1.5.0 正式版,距项目写下第一行代码已近十年。此次版本首次大范围重新设计界面,以适配 macOS 26 的全新设计语言,同时对旧版 macOS 做了风格兼容优化。核心新功能包括解锁窗口长宽比并支持自由缩放、新增「显示布局」侧边栏,可取消视频铺满窗口、停靠控制条与标题栏,实现类似 VLC 的布局体验;左右侧边栏可同时显示且宽度可调。设置窗口被完全重写,所有设置项一览无余,不再隐藏于二级菜单。1.4.0 引入的插件系统在本版本中得到增强,插件侧边栏可独立固定显示在一侧,官方还鼓励用户借助 AI 生成插件并提交 Pull Request,让其他用户可直接在 App 内安装。技术层面,1.5.0 摆脱了对 xib 的依赖,大部分界面改为纯代码实现;开发团队认为 SwiftUI 不够原生、限制过多且不利于长期维护,暂无采用计划,新设置窗口大量使用 Swift Result Builder 以获得类似 SwiftUI 的声明式开发体验。官网 iina.io 也同步改版。团队坦言 HDR 与渲染效率仍受 mpv 上游限制,计划在下一个大版本着手解决。
事件分析
本次更新的技术看点在于 IINA 对苹果生态 UI 开发路线的取舍:彻底移除 xib 转向纯代码,同时明确拒绝 SwiftUI,转而用 Swift Result Builder 模拟声明式开发体验,为 macOS 原生应用在「官方推荐」与「长期可维护」之间的矛盾提供了一个务实样本。界面大改版紧跟 macOS 26 设计语言,也折射出第三方独立应用在系统大版本快速迭代下的持续适配压力。插件侧边栏的强化,配合官方鼓励用 AI 生成插件的倡议,显示开源工具正将 AI 辅助编程纳入生态建设路径,降低社区贡献门槛。后续走向方面,HDR 与渲染效率瓶颈受制于 mpv 上游,IINA 能否在下一大版本突破,将取决于其与 mpv 社区的协作深度,而非单方面努力。
核心观点:拒绝 SwiftUI、弃用 xib,IINA 的技术选型揭示原生开发中,长期可控性正在压过对官方推荐路线的惯性依赖。
原文链接:V2EX 分享发现