如何使用productsign在OSX上签署APP安装程序?

时间:2016-03-17 13:40:16

标签: macos osx-gatekeeper productsign

我从Apple获得了安装程序证书,我的安装程序是自定义APP(没有pkg或其他东西)。现在如果我跑

productsign —sign "Developer ID Installer: xxxx" /DATA/Install/xxx.app /DATA/Install/xxx.app.sign

它只是这样说:

Usage: productsign [options] --sign <identity> <input-product-path> <output-product-path>

我认为这是有缺陷的东西,但也许它只是不喜欢APP文件。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

正如productsign的文档说明:

  

productsign将数字签名添加到以前使用productbuild

创建的产品档案中

因此,您的输入不应该是应用程序包,而是您首先使用productbuild创建的存档包。

请注意,您可以使用 - sign 选项直接从productbuild对产品存档进行签名

只是为了使事情进一步复杂化(!),可以使用pkgbuild来创建存档并使用它进行签名,但如果我没记错的话,你必须使用 productbuild 通过App Store重新部署。

据我了解,如果您的产品包含多个组件,则可以使用 pkgbuild 对每个组件进行归档,然后通过使用 productbuild 将它们捆绑到一个归档中。分发文件,可以使用 productbuild 和选项创建 - 合成

有关详细信息,this question的最佳答案详细说明了制作可分发包所需的步骤。