Mac更新后第三方软件闪退主因是签名被拒、权限重置、架构不兼容或Gatekeeper拦截;需依次执行强制退出重启、启用Rosetta、清除quarantine并重签名、右键“打开”绕过Gatekeeper、重置TCC权限数据库。

Mac系统更新后第三方软件突然闪退,不是文件损坏,而是签名被拒、权限重置、架构不兼容或Gatekeeper拦截导致进程在加载阶段就被系统强制终止;必须按真实触发路径逐层排除,跳过任一环节都可能让问题反复出现。
强制退出并干净重启应用
应用已挂起时,内存映射和线程锁处于污染状态,直接双击只会复现错误上下文,无法真正释放资源。
点击屏幕左上角苹果图标 → 选择“强制退出” → 在列表中选中目标应用 → 点击“强制退出”按钮。
等待5秒,确保后台残留进程完全释放,再双击图标重新启动。这一步不做,后续所有操作都白费。
启用Rosetta模式运行(M1/M2/M3芯片必做)
Apple Silicon芯片无法原生执行x86_64指令,未启用Rosetta会导致指令解码失败,触发内核级闪退——连崩溃日志都不生成,只表现为启动瞬间黑屏退出。
方法一:访达 → 应用程序 → 右键目标App → “显示简介” → 勾选【使用Rosetta打开】→ 关闭窗口 → 重启应用。
方法二:若勾选项灰色不可点,说明该App已被系统标记为“仅限Apple Silicon”,需先在终端执行:sudo xattr -d com.apple.architecture x86_64 /Applications/xxx.app(将xxx.app替换为实际路径),再回简介窗口勾选。
清除quarantine属性并重签名
系统更新后会自动给网络下载的应用打上隔离属性,同时拒绝未公证的ad-hoc签名;这两道关卡叠加,导致应用连启动画面都出不来。
第一步:打开「终端」。
第二步:输入命令 sudo xattr -r -d com.apple.quarantine,留一个空格。
第三步:在「访达」中进入「应用程序」文件夹,将目标App(如 Obsidian.app)直接拖入终端窗口,路径自动填充。
第四步:按回车执行,输入管理员密码(无视觉反馈,输完直接回车)。
第五步:紧接着执行重签名命令 sudo codesign --force --deep --sign -,同样留空格后拖入该App。
第六步:若报错 “resource fork, Finder information, or similar detritus”,改用完整命令:sudo codesign --force --deep --preserve-metadata=entitlements,requirements,flags --sign -。
这一步必须做完才能进下一环,否则后续所有操作都无效。
右键“打开”绕过Gatekeeper一次性放行
即使重签名完成,macOS仍会对首次运行的应用弹出安全警告;双击会直接拒绝,但右键→“打开”能强制唤出“仍要打开”按钮,系统将为此应用实例写入临时信任记录。
在访达中定位应用图标 → 按住Control键单击 → 从菜单中选择“打开” → 在弹窗中点击“仍要打开”。
重置TCC隐私权限数据库
系统更新会清空TCC(摄像头、麦克风、辅助功能、全盘访问等)权限记录,调用这些能力的应用(如录屏工具、OCR、自动化脚本)会在加载阶段直接崩溃,不弹窗、不报错、只闪退。
打开「终端」,输入命令:sudo tccutil reset All。
回车执行,输入管理员密码(无视觉反馈)。
重启目标应用,系统会重新弹出对应权限请求窗口,手动授权即可。

















