logoSpectreAlan's blogs
xxx.app 已损坏,无法打开
标签:
mac
macOS
类别:mac
创建时间: 2021-01-13 22:22:24
字数总计: 1.40 k
建议阅读时长: 2 分钟
阅读量: 775

常见的几种报错

  • xxx已损坏,无法打开,你应该将它移到废纸篓解决办法
  • 打不开 xxx,因为它来自身份不明的开发者
  • 打不开xxxx,因为 Apple 无法检查其是否包含恶意软件
  • 在安装的时候提示加载失败!

为什么会出现? 这是 macOS 启用了新的安全机制的问题。

苹果默认是只允许安装自家【App Store】来源的应用,如果你想安装第三方的应用,那么需要在【系统偏 好设置 -> 安全性与隐私 -> 通用】中勾选【App Store 和被认可的开发者】选项

解决办法

开启任何来源

先打开 系统偏好设置 -> 安全与隐私 -> 通用 选项卡,检查是否已经启用了 任何来源 选项。 当然也可以打开终端执行如下命令:

sudo spctl --master-disable

绕过公证

打开终端,输入以下命令:

sudo xattr -rd com.apple.quarantine /Applications/xxxxxx.app

将上面的 xxxxxx.app 换成你的App名称,比如 Sketch.app

sudo xattr -rd com.apple.quarantine /Applications/Sketch.app

或者复制以下命令粘贴到终端后

sudo xattr -rd com.apple.quarantine

打开Finder(访达),点击左侧的 应用程序,将应用拖进终端中,然后按键盘的回车键(return),输入密码,再按回车键,完成。

注意 quarantine 后面必须有个空格

应用签名

首先安装Command Line Tools 工具 打开终端工具输入如下命令:

xcode-select --install

弹出安装窗口后选择继续安装,安装过程需要几分钟,请耐心等待,安装完成以后, 打开终端工具输入并执行如下命令对应用签名: sudo codesign --force --deep --sign - (应用路径) 应用路径:打开访达(Finder),点击左侧导航栏的 应用程序,找到相关应用,将它拖进终端命令- 的后面,然后按下回车即可,注意最后一个 - 后面有一个空格。 当提示 replacing existing signature则代表已经成功了

如遇如下错误: /文件位置 : replacing existing signature /文件位置 : resource fork,Finder information,or similar detritus not allowed

打开终端执行:

xattr -cr 文件位置

之后再执行签名的命令即可

吐槽一下
copyright