我从Apple获得了安装程序证书,我的安装程序是自定义应用程序(没有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文件。有什么想法吗?
正如 productsign 的文档所述:
产品签名将数字签名添加到以前使用 productbuild 创建的产品存档中
因此,您的输入不应该是应用程序包,而应该是您首先使用 productbuild 创建的存档包。
请注意,您可以使用 --sign 选项直接从产品构建对产品存档进行签名
只是为了让事情进一步复杂化(!),可以使用 pkgbuild 创建一个存档并使用它进行签名,但如果我没记错的话,如果你通过 App Store 部署,你必须使用 productbuild。
据我了解,如果您的产品包含多个组件,则可以使用pkgbuild将它们存档,然后通过使用分发文件与productbuild捆绑在一起,该文件可以使用productbuild和选项--synthesize创建
有关更多详细信息,此问题的最高答案详细介绍了创建可分发包所需的步骤。