4

我刚刚开始签署我的 OSX 桌面应用程序,以便可以轻松地将其安装在 OSX 10.8 上。我遇到了一个非常奇怪的问题,签名工作正常,如果 dmg 通过 DropBox 或 FTP 传输到 Mac,我可以安装,但如果 dmg 上传到服务器,然后使用浏览器下载到 Mac,则签名失败(用户会看到与文件未签名相同的错误)。

背景:该应用程序是 Java,在 Install4J 中使用 Apple 的 .p12 签名。有趣的是,对于未签名或下载的 DMG,OSX 10.8 显示的错误非常奇怪,它表示安装程序“损坏”并且应该卸载。

任何人都知道为什么使用浏览器下载 DMG 时签名会失败?

4

3 回答 3

4

Ingo 有正确的答案,但我想指出是什么帮助混淆了这个问题。使用 dropbox / ftp 移动安装程序时,GateKeeper 似乎不会检查签名 - 仅当使用浏览器(或者可能还有其他选择方法)下载它们时。

所以看起来传输方法有所不同,而实际上签名根本不起作用。

于 2012-07-30T13:05:14.760 回答
3

您使用了错误的证书进行签名。要签署 install4j 安装程序,您需要应用程序 ID 证书,而不是安装程序 ID 证书。

不幸的是,如果证书链不完整,install4j 5.1.1 在编译期间不会抱怨。install4j 5.1.2 将解决这个问题。

于 2012-07-27T15:54:21.877 回答
0

为了澄清,我想补充一点,要使用的苹果证书是“开发者 ID 申请”证书。它可以从应用程序 -> 实用程序 -> 钥匙串访问在 Mac 上导出。

于 2012-11-28T15:03:16.167 回答