Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法

不少用户升级到 macOS Catalina 10.15 或 macOS 11.0 Big Sur 之后,遇到了网上下载的app无法运行的问题,出现以下几种提示:

  • 无法打开“xxx”,因为无法确认开发者的身份。
  • “xxx”已损坏,无法打开。您应该将它移到废纸篓。
  • “xxx”将对您的电脑造成伤害,您应该将它移到废纸篓。

图片[1]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

这是因为 macOS 提高了程序验证的安全性导致,苹果在 2019 年的 WWDC 大会上,向开发者告知将恢复针对 macOS 的应用程序验证的要求,从而确保最终用户的使用安全,也就是说所有的应用不管是在 Mac App Store 还是自行分发,都需要进行数字签名,这个政策于 2020 年 2 月开始变成强制执行。这套验证机制在 macOS Catalina 10.15 beta 时期还闹出无法安装苹果自家 xCode、Final Cut Pro的笑话,其实原来能在你的 macOS 上运行的 app 本身是没有任何问题的,当然来路不明的除外。

既然知道了原因,那么就有对应的方法,这里列举几种常见的解决方法。

方法一:开启“任何来源”

打开系统设置,进入安全与隐私选项,在通用选项卡下,“允许从以下位置下载的app”里如果没有“任何来源”的选项,请打开 终端.app( Terminal.app ),输入以下命令:

sudo spctl --master-disable

然后输入登陆密码,回车,如没有生效请重启,重启后,该位置会出现“任何来源”选项:

图片[2]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

 

 

方法二

  • 按住 Control 键的同时,在想打开的app上右键,点击打开

图片[3]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

  • 如果无效还是打不开,在app上右键,依次选择:
显示包内容 → Contents → MacOS → 双击运行和app同名的Unix文件显示包内容 → Contents → MacOS → 双击运行和app同名的Unix文件

图片[4]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

 

方法三:移除安全隔离属性

打开终端.app ( Terminal.app ),输入以下命令:

sudo xattr -d com.apple.quarantine /Applications/xxx.app

命令中的xxx.app就是你要打开的app,如果怕输错,可以在输入完:

sudo xattr -d com.apple.quarantine

后把app拖入终端,终端会自动补全路径和文件名信息。完成后再双击运行app即可,此代码只需运行一次。

图片[5]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

 

方法四:自行签名

此方法针对软件没有签名,或有类似 TNT 这种无效签名的软件,运行后会直接闪退。这种情况可以使用 Xcode 自行签名临时解决,操作如下:

首先到 App Store 下载安装 Xcode,并打开运行一次。

图片[6]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

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

xcode-select --install

会弹出以下窗口,点击确定,稍等片刻就会装好。

图片[7]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

然后使用 codesign 命令给 app 签名,如下:

sudo codesign --force --deep --sign - /Applications/要签名的软件.app

图片[8]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

以上 /Applications 文件夹就是 应用程序目录,可以输入完前半部分后:

sudo codesign --force --deep --sign -

直接把 app 拖进终端,终端会自动补全路径。

图片[9]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

完成后可以通过以下命令检查签名状态,签名前:

codesign -dvvv /Applications/刚刚签名的软件.app

图片[10]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

签名后:

图片[11]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

 

方法五:关闭SIP

此方法适用于以上都没用的情况,SIP(System Integrity Protection,系统完整性保护)被关闭后,macOS会面临一定的安全风险,如果你的数据非常重要请谨慎关闭。先点击左上角苹果图标,打开关于本机,再点击系统报告,左侧列表切到软件一项:

图片[12]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

这里显示“已启用”,就是SIP是开启的状态,这个时候需要重启,在显示苹果图标前,按住 Command + R 键,强制进入macOS恢复模式,然后在左上角实用工具选择终端:

图片[13]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

在终端中输入以下代码:

csrutil disable

图片[14]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

出现以下显示即代表成功:

图片[15]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

再重启进入macOS,查看系统报告,软件部分即会显示:

图片[16]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

这个时候,之前不能打开的app即可成功打开了:

图片[17]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

 

图片[18]-Mac OS Catalina/Big Sur 无法打开app,提示“因为无法确认开发者身份”问题的解决方法-Mac软件教程论坛-教程-资源站

如果需要重新开启SIP,在恢复模式下使用终端输入命令:

csrutil enable

 

黑苹果如何进入恢复模式?

黑苹果macOS系统进入恢复模式有两种方法:

  • 启动时进入 Clover/OpenCore 引导界面,选择 Recovery HD(即安装 macOS 时自动生成的恢复分区)进入恢复模式;
  • 如果没有该选项,说明被隐藏,在 Clover 引导界面按下F3,即可显示所有隐藏的分区;如果是 OpenCore,在 config 中关闭或取消勾选 HideAuxiliary;
  • 安装 macOS 时用到的的 U 盘,使用 U 盘引导也可以进入黑苹果恢复模式。
请登录后发表评论

    没有回复内容