【发布时间】:2015-02-03 07:09:26
【问题描述】:
我无法理解如何将我的 Mac 应用程序打包到安装程序 (.pkg) 并签署它以便在 App Store外部(例如我自己的网站)分发。
Xcode 6 的 Organizer/Archives 窗口为您提供了四个导出 Mac 应用存档的选项:
导出开发者 ID 签名的应用程序 - 签名身份:开发者 ID 应用程序:()
为 Mac App Store 部署保存 - 签名身份:第 3 方 Mac 开发者应用程序()
导出为 Mac 安装程序包 签名身份:第 3 方 Mac 开发者应用程序()
导出为 Mac 应用程序 -(立即提示保存位置)
请注意,导出安装程序包的选项不使用“3rd Party Mac Developer Installer”身份(我的钥匙串中也有该证书),而是“3rd Party Mac Developer 应用程序”签名身份。这是为什么?也许这里正在签名的是安装程序中包含的应用程序,我仍然需要对包本身进行签名? (顺便说一句,我试过这个,但是在通过电子邮件将 pkg 发送给自己之后,但双击它会产生可怕的“无法打开,因为它来自身份不明的开发人员”警告)
Apple 的文档有点简洁,涵盖了很多领域(签名包、可执行文件、框架等),并且似乎以命令行工具 codesign 和 productsign 为中心; S.O.中的相关问题也可以这样说。那么,上面列出的 Organizer 的导出选项 #3 的目的是什么?我可以使用它吗?我应该使用命令行构建包,还是可以利用这个 Xcode/GUI 工具,然后在导出的 .pkg 上签名? (我猜是使用命令行)。
为什么 Xcode 不能“正常工作”并一次性打包/签署应用程序/包?我的安装程序不需要任何花哨的逻辑或布置任何支持文件/目录结构;它只是我的.app 的“包装器”。
附录:我尝试从 Organizer 导出一个 .app 包,签名为“开发人员 ID 应用程序”(上面的选项 #1),将它与旧的 PackageMaker.app 打包,然后签名使用命令行。但是我仍然收到“未知开发人员”错误,并且在隔离后无法打开安装程序。
【问题讨论】:
标签: xcode macos installation