【发布时间】:2019-11-18 22:01:53
【问题描述】:
我在 Xcode 中以发布模式构建了一个应用程序。使用有效的 Developer ID 证书签名。该应用程序在某些 MacBook 上运行良好。 但在另一次启动失败并出现错误
应用程序 %name% 无法打开。
然后我尝试使用open 命令从终端启动它
LSOpenURLsWithRole() 失败,文件 /Applications/Gaetano Lunches.app 出现错误 -54。
然后我尝试直接从包内容中启动二进制文件 它说
-bash:/Applications/Gaetano Lunches.app/Contents/MacOS/Gaetano Lunches:不允许操作
允许在所有 MacBook 上从 Anywhere 安装应用程序。 spctl-master 被禁用。文件的权限是正确的。但应用无法启动。
【问题讨论】:
-
嗯。听起来该应用程序试图打开一些文件。
LSOpenURLsWithRole实际上已被弃用。您是否使用过一些已弃用的 API,例如旧的“登录时启动”的东西? -
不确定我是否使用了任何已弃用的 API。这是一个非常小的应用程序,显示从某个 URL 接收到的字符串列表。源码可以在我的github上找到github.com/obukhow/OggettoLunchMac
-
哦,我明白了。不,我也没有什么明显的……
-
@JulianF.Weinert,哪个 Mac 操作系统?有什么特定于版本的吗?这些 Mac 上是否有任何安全软件?
-
您是否也可以尝试运行
sudo launchctl stop com.apple.security.syspolicy && sudo launchctl start com.apple.security.syspolicy看看是否有帮助?
标签: xcode macos macos-high-sierra