Repository navigation
RDM-ARM 1.0.2(黑屏保护)
Pre-release
Pre-release
这一版解决什么
1.0.1 让同事能下载到能跑的东西;1.0.2 解决「跑起来可能回不去」的问题。
本机 macOS 报告 257 个模式,其中 77 个被标记为「不适合桌面 GUI 使用」。而 RDM 的价值恰恰在于把它们全部列出来——不列出来就没有可解锁的东西。
风险在于:显示器如果真显示不了这个模式,画面会全黑。而能让你改回来的菜单栏图标,正好画在这块黑掉的屏幕上。除了等系统超时或强制重启,没有别的办法。原版 RDM 没有处理这件事。
黑屏保护(新增)
每次切换分辨率或旋转后弹出 15 秒确认框:
| 操作 | 结果 |
|---|---|
| 什么都不做 | 15 秒后自动还原到切换前的模式和旋转角度 |
| 点「保留」 | 采用新模式 |
| 点「立即还原」 | 立刻退回 |
- 选中的就是当前模式时不会弹框。
- 设置 → 通用里可以关掉。
- 命令行也有保护,但只在选中的模式被标记为不可用时才询问,而且要求标准输入是终端。每次切换都问会让脚本白白卡 15 秒;一个动不动就拦人的保护最后一定会被永久关掉。要显式跳过用
-y/--no-confirm。
顺带修掉的两个真问题
- 打包脚本会把非通用二进制标成 "universal":原本只检查 arm64 切片,于是复用一次 arm64-only 构建时会产出文件名和安装说明都写着「通用二进制」、实际只能在 Apple silicon 上跑的 zip。现在两个切片都强制检查。
Info.plist里的模板版本长期停在1.0.0:构建时会被覆盖所以本地看不出来,但任何跳过build.sh的打包路径都会带着错版本出去。现在三处版本号都核对。
安装
-
下载下面的
RDM-ARM-1.0.2-universal.zip,解压得到RDM-ARM.app和安装说明.txt。 -
把
RDM-ARM.app拖进「应用程序」。 -
首次打开前必须做一件事。 本应用只有 ad-hoc 签名(没有 Apple 开发者签名与公证),macOS 会拦下它并提示「已损坏」或「无法验证开发者」——这是预期的,不是文件真的坏了。在「终端」里执行一次:
xattr -dr com.apple.quarantine /Applications/RDM-ARM.app
-
它是菜单栏应用,没有主窗口。 打开后请看屏幕顶部菜单栏,会多出一个显示器图标。如果菜单栏图标太多看不到,在菜单栏空白处按住 Command 再拖动可以调整顺序。
验证
| 项 | 结果 |
|---|---|
| 通用构建 | x86_64 arm64,2.4 MB |
| CI(Xcode 15.4 / Swift 5.10) | 12 步全绿,含新增的版本号一致性检查 |
| 还原往返 | 2304×1296 ⚡️ → 2304×1296 → 2304×1296 ⚡️,PASS |
| 倒计时自动还原 | 实测 3.5 秒返回、退出码 3、显示器无变化 |
| 非终端不阻塞 | -w 2304 -h 1296 -s 2 < /dev/null 0.036 秒返回,无弹框 |
| 包体 | 1.5 MB,SHA-256 810609208af04a8666395e0bf79bad9ad0efb7863385d68d88fcf5fdf60dc060 |
没验到的:「保留」按钮路径没有实测——按下它需要真实键盘事件,合成事件打进自己进程需要辅助功能权限(本机未授予)。代码上它与「立即还原」共用同一个回调,只差 stopModal(.OK) / .cancel;超时路径已验证定时器确实在模态循环里触发,所以风险很低,但没有端到端跑过。
系统要求
macOS 13.0 或更高。通用二进制,Apple silicon 与 Intel 都能跑。