Mac弹出“此App不兼容当前macOS版本”但实际可运行,是因Launch Services读取错误锁定的旧版系统版本号;需用defaults write命令覆盖LSMinimumSystemVersion字段并重启Dock生效。

Mac系统弹出“此App不兼容当前macOS版本”却实际能运行,是因为Launch Services在启动前读取了系统级描述文件中声明的版本号,该值被错误锁定为旧版,需手动覆盖com.apple.LaunchServices域中的LSMinimumSystemVersion字段。
定位并修改系统级LaunchServices描述文件
这一步不修改App自身,只欺骗系统启动器——适用于临时验证老软件能否运行,不改变任何应用包内容。
打开终端,执行以下命令查看当前系统版本号:
【sw_vers -productVersion】
假设返回15.7,则继续执行写入命令(请将15.7替换为你的真实版本号):
defaults write com.apple.LaunchServices LSMinimumSystemVersion -string "15.7"
该命令直接向LaunchServices偏好设置域注入一个全局最低系统版本声明,覆盖系统默认拦截逻辑。
重启Dock使新设置生效:
killall Dock
验证是否生效
双击目标App图标,若不再弹出“不兼容”提示而是进入正常启动流程,说明修改成功。
如仍报错,请立即检查是否遗漏了【killall Dock】步骤——未重启Dock会导致设置完全不加载。
启动后若进程崩溃,说明该App内部含有运行时系统版本检测代码,此法无法绕过,必须回到App包内修改Info.plist。
恢复原始状态(可选)
方法一:终端执行
defaults delete com.apple.LaunchServices LSMinimumSystemVersion
方法二:重启Mac,该临时设置自动失效。

















