不想花钱买Luna Display?这个小工具让你的旧iPhone秒变Mac副屏
家里躺着一台吃灰的旧 iPhone 或者 iPad,是不是总觉得挺可惜的?OpenDisplay 这个项目,就是专门解决这个"浪费"问题的——它能把你手边的苹果设备,变成 Mac 的一块真正的扩展屏幕。
先说清楚它和"投屏"有什么区别。很多人以为把手机接到电脑上就是把电脑画面镜像过去,跟拿手机录屏幕差不多。OpenDisplay 不是这个逻辑,它是让 macOS 真的把你的 iPhone 或 iPad 当成一台独立显示器来识别——你可以在系统设置的"显示器"里正常排列它的位置,往上面拖窗口,效果跟接一台外接显示器没什么两样。用来常驻放聊天窗口、笔记、日志,或者出门在外多一块屏幕干活,都挺合适。
这类需求其实早就有解决方案了,苹果自己的 Sidecar 就能干,但 Sidecar 只支持 iPad,iPhone 不行,而且两台设备必须登录同一个 Apple ID,很多人拿闲置的旧手机根本用不上。收费的 Duet Display 改成订阅制了,长期用下来也是一笔钱。Luna Display 效果不错,但得买个硬件加密狗,多一层成本和麻烦。OpenDisplay 的定位就是把这几个坑都填上:免费、开源、不用绑同一个 Apple ID、不用买额外硬件,USB 或者 Wi-Fi 连接都支持。
技术上它做得还挺讲究。USB 连接走的是 macOS 系统自带的 usbmuxd(就是 iTunes/Finder 识别手机用的那套底层通道),插上线就能用,不需要额外装驱动或者助手工具,延迟也是最低的。Wi-Fi 连接靠 Bonjour 自动发现设备,跟你在局域网里找打印机差不多,选一下就连上了,零配置。画面传输用的是苹果自家的硬件编码 VideoToolbox,走 H.264 实时编码,同时做了掉帧后的关键帧恢复,保证卡顿之后能很快跟上,不至于花屏很久。分辨率上也是按视网膜屏 @2x 的标准做的,文字看着不会糊。触控这块也支持,单指点按当鼠标点击,拖动当拖拽,双指划当触控板滚动,用起来算是比较接近真实外接屏的体验。
要说清楚一件事:这个项目用到了一个叫 CGVirtualDisplay 的私有 API(BetterDisplay、DeskPad 这类虚拟显示器工具也在用),这也是它没法上架 App Store、只能放在 GitHub 上让大家自己编译安装的原因。私有 API 意味着什么呢——苹果哪天更新系统,有可能把这条路封掉,功能就会失效一段时间,这是所有做虚拟显示器的工具都逃不掉的风险,不是 OpenDisplay 一家的毛病,但确实是要有心理准备的地方。
上手门槛怎么样呢?说实话,对纯小白不算特别友好。Mac 端有编译好的 dmg 包可以直接下载安装,签名和公证都做了,双击打开不会有安全警告,这部分很省心。但 iPhone/iPad 端目前主要靠加入 TestFlight 公测,或者自己用 Xcode 从源码编译安装到手机上——后者需要一个免费的 Apple 开发者账号,对完全没碰过代码的人来说会有点陌生。好在项目本身代码量不大,每个平台就四个 Swift 文件左右,没有一堆乱七八糟的依赖,愿意折腾的人上手起来不难。另外权限这块也得留意,Mac 上要单独开屏幕录制和辅助功能权限,Wi-Fi 模式下双方还得开本地网络权限,官方文档里都写清楚了,照着做基本没坑。
从 GitHub 的情况看,这是个个人维护的小项目,25 个 star,3 个 fork,issue 和 PR 都有人在处理,最新版本是六月底刚发的 v0.9.0,更新还算勤快,作者也把接下来要做的东西——比如 Apple Pencil 支持、HEVC 编码、音频转发——都列成了路线图,透明度不错。目前音频还不支持,纯粹只是屏幕和触控,这点想清楚再决定要不要用。整体来说,这不是一个能取代所有商业方案的完美产品,但对愿意折腾一下、又不想为了一块副屏花钱的人来说,是个挺实在的选择。
安装地址
iPhone / iPad:https://apps.apple.com/us/app/opendisplay/id6780264891