【免费下载链接】Mac-Duo
Wish you could bring the iPhone Duo effect to your MacBook?
Mac Duo 是一款把 iPhone 经典「Duo 合盖效果」带到 MacBook 上的免费工具:合上盖子时,屏幕内容会随开合角度倾斜、模糊并变暗。但在安装之前,最关键的问题是:你的 MacBook 支持 Mac Duo 吗?这篇文章从硬件原理、兼容清单到 5 大已知限制一次讲清,并教你一分钟自查是否配备盖子角度传感器。
盖子角度传感器:Mac Duo 的硬件基础
Mac Duo 的一切效果都建立在一个藏在 MacBook 转轴附近的盖子角度传感器(lid angle sensor)上:
- 它是一块 Apple HID 方向传感器(usage page
0x20、usage0x8A),专门报告屏幕的开合角度:0°表示完全合盖,约130°表示完全打开 - 数值大约每 100 ms 刷新一次(10 Hz),读取它不需要任何系统权限
- 有两种精度档位:整度数报告(1° 步进)和高精度报告(0.01° 步进),并非所有机型都支持后者,应用会自动降级兼容
实现位于 LidAngleSensor.swift,核心读取逻辑见angle()方法:LidAngleSensor.swift。
⚠️ 注意:macOS 必须将该传感器标记为内置(built-in),Mac Duo 才会采用它——这是兼容性的第一道门槛。
一分钟自查:MacBook 有没有盖子角度传感器?
方法一:看 Mac Duo 设置面板
安装并启动 Mac Duo 后,点击菜单栏图标打开设置面板:
- ✅有传感器:面板右上角会实时显示当前角度(例如
125.2°),说明你的机器受支持 - ❌无传感器:面板会显示提示——「这台 Mac 没有屏幕开合角度传感器。只有部分 MacBook 机型配备该传感器。」(见 SettingsView.swift 与中文文案 Localizable.strings)
方法二:用 lidprobe 命令行工具验证(可选)
项目内置了一个轻量诊断工具lidprobe,可以脱离主程序直接探测传感器。克隆仓库并构建:
git clone https://gitcode.com/gh_mirrors/mac/Mac-Duo cd Mac-Duo ./build.sh构建后运行lidprobe(源码见 lidprobe/main.swift):
- 输出
sensor found: ...→ 有传感器,受支持 - 输出
no lid angle sensor found on this Mac→ 无传感器,不受支持 - 追加
rate参数(lidprobe rate)还能测出传感器实际刷新率,适合折腾党排查异常
Mac Duo 兼容性要求速查表
| 项目 | 要求 |
|---|---|
| 系统 | macOS 14 或更高版本 |
| 芯片 | Apple Silicon 与 Intel 芯片均支持 |
| 机型 | 仅限配备盖子角度传感器的 MacBook |
| 台式 Mac(iMac / Mac mini / Mac Studio) | ❌ 无盖子,不受支持 |
| 外接显示器 | ❌ 不受影响,也不提供效果 |
| 屏幕录制权限 | ✅ 必须授予(效果依赖实时截屏) |
| 源码构建(可选) | Xcode,Swift 6.0+ |
需要说明的是:Apple 并未公布完整的传感器机型清单,Mac Duo 在运行时动态检测是否找到内置传感器(检测逻辑见 LidController.swift)。因此规律是:较新的 MacBook Air / MacBook Pro 基本都支持,缺少该传感器的较老机型则不行——以你机器上的实际检测结果为准。
5 大已知限制逐条详解
以下限制来自项目官方说明(README.md),使用 Mac Duo 前务必了解:
限制 1:只有配备兼容传感器的 MacBook 才能使用效果
这是最核心的门槛。如果你的 Mac 找不到内置传感器,应用会明确提示(见上文「方法一」),效果功能将无法启用。
限制 2:传感器必须是内置的,外接显示器的同款传感器会被忽略
某些外接显示器也带有类似的角度传感器,但 Mac Duo 会只认 macOS 标记为 built-in 的那一个,外接设备的传感器一律忽略,避免读数被干扰。
限制 3:效果只作用于内建屏幕
即便你同时外接了 4K 显示器,Mac Duo 的倾斜、模糊、变暗效果只覆盖 MacBook 自带屏幕,外接显示器画面完全不受影响——这其实也是它不干扰正常工作流的优点。
限制 4:合盖导致系统休眠时,效果会停止
MacBook 合盖通常会触发系统休眠,此时 macOS 会冻结渲染,效果随之结束。重新开盖唤醒后,Mac Duo 会重新读取传感器基线角度并恢复正常工作(休眠/唤醒处理见 LidController.swift)。
限制 5:点击会穿过效果层直达下层应用
Mac Duo 的效果层是一个透明覆盖窗口,鼠标点击和键盘输入会直接穿透,作用在它背后的真实应用上。也就是说,效果展示期间你依然可以正常操作屏幕内容。
兼容性结论速查
- ✅ MacBook 有传感器 + macOS 14+ → 完整支持,授予屏幕录制权限即可
- ✅ 启动后设置面板实时显示角度 → 你的机器通过了传感器检测
- ❌ iMac / Mac mini / Mac Studio → 无盖子,不支持
- ❌ 面板提示「没有屏幕开合角度传感器」→ 机型不支持
- ⚠️ 外接显示器不受影响;效果仅作用于内建屏
- ⚠️ 效果层可点击穿透,不阻挡操作
如果面板提示无传感器但你认为机型应该支持,可以再用lidprobe复测一次;角度阈值、模糊强度等效果参数均可在设置面板内自由调节(默认值见 Preferences.swift)。
【免费下载链接】Mac-Duo
Wish you could bring the iPhone Duo effect to your MacBook?
相关推荐
LidAngleSensor终极指南:揭秘MacBook隐藏的盖子角度传感器
LidAngleSensor终极指南:揭秘MacBook隐藏的盖子角度传感器 你是否知道你的MacBook里藏着一个盖子角度传感器?这个鲜为人知的功能可以精确检
桌面应用智能硬件2025最全MonitorControl兼容清单:你的Mac和显示器适配吗?
2025最全MonitorControl兼容清单:你的Mac和显示器适配吗? 你还在为外接显示器无法调节亮度而烦恼?MonitorControl作为一款开源Ma
桌面应用Virtual Mac 支持哪些设备?iPad Pro/Air 与 macOS 版本兼容性完整清单
Virtual Mac 支持哪些设备?iPad Pro/Air 与 macOS 版本兼容性完整清单 Virtual Mac 让在 iPad 上运行 macOS
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考