无法通过 xcode4 提交 Mac 应用程序 - 签名无效

发布于 2024-11-14 22:43:23 字数 757 浏览 2 评论 0 原文

我不断收到此错误:

签名无效 - 当您错误地签署应用程序的安装程序时,就会出现此错误。此过程需要两个证书:“3rd Party Mac Developer Application”证书和“3rd Party Mac Developer Installer”证书。对程序包进行签名时,您需要确保使用安装程序证书对程序包进行签名。确保您在通过 Xcode Organizer 提交应用程序或从命令行运行 Productbuild 时指定此证书。

我已经用 google 搜索过,并按照说明进行操作,但无济于事。

我有:

项目>目标>构建>代码签名>第 3 方 Mac 开发人员应用程序:

然后,当我转到存档并打开管理器时,我要提交,我选择“第 3 方 Mac 安装程序”密钥。但它仍然失败:(

我需要做任何其他事情吗?比如清理然后先构建?(构建什么?或者只是选择构建?-尽管我已经尝试了几乎所有这些,然后再存档)。

如果这是相关的,我正在使用 MacRuby,并且必须首先执行此操作才能将其设置为 xcode 部署: http://redwoodapp.posterous.com/macruby-and-xcode-4-build-a-self-contained-ma

感谢任何帮助 - 我在这里撕扯我的头发: (

I keep getting this error:

Invalid Signature - This error occurs when you have signed your app's installer incorrectly. There are two certs required for this process: the "3rd Party Mac Developer Application" cert and the "3rd Party Mac Developer Installer" cert. When signing your package, you need to ensure that you are using the Installer cert to sign your package. Ensure that you are specifying this cert when submitting your app via the Xcode Organizer or when running productbuild from the command line.

I've googled, and have followed instructions but to no avail.

I have:

Projects > targets > build > code signing > 3rd Party Mac Developer Application:

Then when I go to archive and it opens up Organizer I go to submit I select the '3rd Party Mac Installer' key. But it still fails :(

Do I need to do anything else? Like clean and then build first? (Build for what? Or just select build? - Although I've tried pretty much all of them first, and then archive).

If it's of relevance I am using MacRuby, and had to do this first to set it up for xcode deployment: http://redwoodapp.posterous.com/macruby-and-xcode-4-build-a-self-contained-ma

Any help appreciated - I'm tearing my hair out here :(

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

巷子口的你 2024-11-21 22:43:23

我最近也遇到了同样的问题。这是写下并分享我自己的笔记的绝佳机会。 :)

我假设您正在使用 Xcode 和 Organizer(不是应用程序上传器)

第 1 步:检查 Keychain Access.app。

您必须有两个证书(从 mac 开发中心下载)。其中每一个都必须与私钥链接。
在图中,我只有一个证书“nacho4...”与私钥“nac...”链接。所以我应该去 mac 开发中心下载我的证书才能继续。下载它们并将它们拖到“登录”中。

我只有一个与私钥“nac...”链接的证书“nacho...”。确保您有其中两个。

第 2 步:确保您可以使用正确的配置构建应用程序。

就我而言,我设置了三种配置。
调试:可以调试+无需签名(用于开发)
发布:无法调试+无签名(主要用于内部测试版等)
分发:无法调试+签名(对于应用程序商店分发)

转到项目“构建信息”>“构建签名”>
确保您使用正确的签名标识对代码进行签名。类似于:“第 3 方 Mac 开发者应用程序。My Company Inc.”
*如果您看不到这一点,则意味着您的 Keychain Access.app 中的证书有问题。检查您的证书是否与私钥链接
在此处输入图像描述

步骤 3 确保您正在构建正确的配置。

(是的,有点明显,但上次发生在我身上。这就是您可能收到“无效签名”的原因)在“编辑方案”面板中,确保“存档”部分中的配置正确。在我的例子中是“分发”(默认为“发布”)

在此处输入图像描述

请注意,如果您不这样做正确执行此操作,您将能够将二进制文件提交给 Apple,但几分钟后您将收到“无效签名”。因为证书没问题,但应用程序未签名。

第 4 步:构建应用程序并提交

Xcode>Product>Archive
在此处输入图像描述

将出现组织者。现在只需提交即可。

我发现验证存档是没有用的,因为有时即使验证失败,我也可以毫无错误地提交我的应用程序。我也从其他线程中读到了这篇文章,所以不仅仅是我。因此,如果您确定这是您想要提交给 Apple 的版本。只需按提交按钮即可。

系统会询问您的用户名和密码。
然后,您将获得另一个菜单来选择应用程序(With 只有一个选项,至少在我的情况下),然后选择我认为的签名身份。
这很重要!确保选择“3rd Party Mac Developer Installer”并且一切正常。

在此处输入图像描述

如果您在最后一个菜单中看不到“3rd Party Mac Developer Installer”选项,那么这意味着什么您的钥匙串中丢失了。 (来自 mac 开发中心的安装程序证书)

请注意,如果您没有正确执行此操作,您将能够提交二进制文件,但几分钟后您将收到来自 iTunes Connect 的“无效签名”邮件,因为该应用程序可能会很好已签名,但 Apple 将提供的证书不正确。

我希望它有帮助。

I had the same problem lately. And this is a perfect chance to write down and share my own notes. :)

I am assuming you are using Xcode and Organizer (not application uploader)

Step 1: Check Keychain Access.app.

You have to have two certificates (That you download from mac dev center). Each of these has to be linked with a private key.
In the picture, I have only one certificate "nacho4..." linked with a private key "nac...". So I should go to the mac dev center and download my certificates in order to continue. Download them and drag them into the "login".

I only have one certificate "nacho..." linked with a private key "nac...". Make sure you have two of these.

Step 2: Make sure you can build your app with the right configuration.

In my case, I setup three configurations.
Debug: can debug + no signing (for development)
Release: cannot debug + no signing (mainly for internal betas, etc)
Distribution: cannot debug + signing (for app store distribution)

Go to project "build info">"build signing">
Make sure that you are signing you code with the correct sign identity. Something like: "3rd Party Mac Developer Application. My Company Inc."
*If you can't see this then it means something wrong is with your certificates in Keychain Access.app. Check your certificate is linked with a private key
enter image description here

Step 3 Make sure you are building the right configuration.

(Yeah, kind of obvious but it happened to me the last time. This is the reason you could be getting "Invalid signature") In the "Edit Scheme" panel , make sure you have the right configuration in the "Archive" section. In my case is "Distribution" (The default is "Release ")

enter image description here

Note that if you don't do this correctly you will get be able to submit your binary to Apple but minutes later you will get an "Invalid Signature". Because the certificates are fine but the app is not signed.

Step 4: Build you app and submit it

Xcode>Product>Archive
enter image description here

The organizer will appear. Now just submit it.

I have found that validating the archive is useless because sometimes even the validation fails I am able to submit my app without errors. I read this from other threads too so not only me. So if you are sure this is the version you want to submit to Apple. just press the submit button.

You are asked your username and password.
Then, you get another menu to select the application (With has only one option, at least in my case) and then select the signing identity I think.
This is important! Make sure "3rd Party Mac Developer Installer" is selected and everything should work.

enter image description here

If you can't see "3rd Party Mac Developer Installer" option in the last menu then it means something is missing in your keychain. (The Installer certificate from the mac dev center)

Note that if you don't do this correctly you will be able to submit your binary but minutes later you will get an "Invalid signature" mail from iTunes Connect because the app probably could be well signed but the certificates Apple will se are incorrect.

I hope it helps.

绿阴红影里的.如风往事 2024-11-21 22:43:23

另外两个答案是很好的清单,但它对我不起作用。

我的问题是我在 Lion 上安装了 Xcode 3.2.6(无论如何它都不起作用,但那是另一个故事了)。这损坏了productutil 应用程序。

要修复此问题:将 BSD.pkg 安装在 Lion 安装程序的 Packages 文件夹中。

感谢 Jacob Gorban 在 Apple 开发者论坛上分享他的解决方案。

The other two answers are good checklists, but it didn't work for me.

My problem was that I had installed Xcode 3.2.6 on Lion (it doesn't work anyway, but that's another story). This corrupted the productutil app.

To fix it: install the BSD.pkg in the Packages folder of your Lion Installer.

Thanks to Jacob Gorban to share his solution on Apple Devs Forums.

旧梦荧光笔 2024-11-21 22:43:23

我想这终于解决了——感谢 MacRuby 邮件列表中的 Daniel。事实上,我最终与苹果公司创建了一张票,但希望他们不会向我收取费用,现在它已经在没有他们的情况下修复了。

您可以在此处查看解决方案: http://astonj.com/uncategorized/invalid-signature-error-on-submitting-app-to-the-mac-app-store/

Think this is finally sorted - thanks to Daniel from the MacRuby mailing list. I actually ended up creating a ticket with Apple, but hopefully they won't charge me for it now it's been fixed without them.

You can view the solution here: http://astonj.com/uncategorized/invalid-signature-error-on-submitting-app-to-the-mac-app-store/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文