【发布时间】:2013-06-17 17:25:37
【问题描述】:
我有一台 Mac Pro,我通常在其上构建并签署我的应用程序,以便在 Mac App Store 之外分发(即使不是应用程序商店应用程序,安装 Gatekeeper 的 Mountain Lion 机器也需要签署)。
我在终端中签署了应用程序,它在 Mac Pro 上运行良好,所以我去为 Mac Book Air 创建另一个开发者 ID 应用程序证书,成功创建了安装的证书,但我完全无法签名任何应用程序仍在播放中。我不断收到错误:
object file format unrecognized, invalid, or unsuitable
问题是我可以获取在任一机器上构建的 .app 文件并在 Mac Pro 上成功对其进行签名。如果我从任何一台机器上构建一个 .app 文件并尝试在 Mac Book Air 上构建,我会收到此错误。我没有收到关于证书的任何错误。
就在这里,我使用以下两行来签署应用程序(我将其复制到我桌面上的“应用程序”文件夹中):
cd ~/Desktop/App
codesign -f -v -s 'Developer ID Application: [company name]' '[appname].app'
我已经检查了钥匙串访问权限,并且证书在两台机器上的显示几乎相同。两台计算机都运行 10.8.3。我真的看不出阻止 MBA 签署应用程序的区别是什么。
感谢您的帮助!
【问题讨论】:
-
四处搜索后发现您需要在 Xcode 的 Preferences Window > Downloads 部分手动安装命令行工具,以允许终端中的代码签名正常工作。显然,我在设置与 Gatekeeper 打交道时在 Mac Pro 上执行了此操作。看起来又是一个无用错误信息的案例!
标签: ios code-signing code-signing-certificate