【问题标题】:iPhone AppStore Build : Code signing problemiPhone AppStore Build:代码签名问题
【发布时间】:2009-11-17 14:58:29
【问题描述】:

我一直在使用您通过我关于 iPhone 开发的各种 Google 搜索分享的关于堆栈溢出的知识。谢谢你。

但现在我需要你的积极帮助。好吧,我一直在尝试为我的公司正在为第三方客户开发的应用程序创建最终版本。我已经使用我公司的 iPhone Program Portal ID 向该客户提交了临时分发,并且它们运行良好。

现在客户想要将应用程序提交到 AppStore。当然,应用程序应该使用客户公司的 iPhone Program Portal ID 进行签名。

因此,客户为我创建了一个管理员团队成员帐户,并请求了一个证书并自己批准了它。下载了它。并通过双击将其安装在“登录”钥匙串(默认钥匙串)下的钥匙串访问中。

之后我创建了一个 App ID。然后我继续创建 AppStore 分发配置文件。在这里,我发现了一些如何在 Provisioning Profiles 下获得“Development”选项卡而不是“Distribution”选项卡。

所以最后客户分享了他的 iPhone Program Portal ID 的登录凭据,我使用它创建了一个 AppStore 分发配置文件。之后,我下载了配置文件并将其放在“/Library/MobileDevice/Provisioning Profiles”下

然后在构建属性下,我尝试将此配置文件分配为代码签名身份,它给了我错误:

配置文件与默认钥匙串中的任何有效证书/私钥对都不匹配

在此之后,我创建了下载客户端开发以及分发证书并将它们添加到“登录”(设置为默认钥匙串)

之后,我使用客户端帐户创建了一个新的 AppID 和配置文件,并尝试使用这个新的配置文件对代码进行签名。但它仍然给了我错误:

配置文件与默认钥匙串中的任何有效证书/私钥对都不匹配

谁能解释一下可能是什么问题?是不是因为配置文件是使用客户端证书创建的,并且因为我只有证书但没有该证书的私钥,所以它给了我错误?

或者换个说法

创建 AppStore 构建证书是否需要使用相同的帐户创建 App Id 和配置文件,并且用于创建构建的 Mac 上的钥匙串必须同时包含证书和证书的原始私钥?

非常感谢所有回复。

问候,

Pritam Barhate。

【问题讨论】:

    标签: iphone app-store signing


    【解决方案1】:

    听起来您已经导入了客户的证书,但没有导入他们的私钥。您需要私钥和证书来签署应用程序。出于安全原因,私钥永远不会上传到 Apple Portal,因此您将无法从那里获取它。

    您可以通过选择钥匙串访问左侧的证书来检查您是否拥有私钥。您现在应该在客户的分发证书左侧看到一个三角形。按三角形应该展开显示与该证书关联的私钥。如果没有三角形,那么你就没有私钥。

    【讨论】:

    • 这对我有用。我必须从我以前的开发框中导出我的私钥,然后在新框上双击它(将其导入 Keychain Access)。我现在可以构建以在 XCode 中分发。
    • @Pritam,如果我的回答对你有用,你能点击勾号让我得到奖励吗? :-)
    • 是的,我没有导入私钥。对不起,我这么久才添加这个回复。不小心得到了答案,然后又忘记回到这里了。但无论如何,谢谢。 Stack Overflow 是一个非常有用的社区。​​span>
    【解决方案2】:

    您需要使用您在自己的计算机上创建的 .certSigningRequest 重新生成客户端的分发证书(与为 iPhone 开发人员程序请求任何其他证书一样),然后使用该证书重新创建他们的分发配置文件。

    【讨论】:

      【解决方案3】:

      我无法告诉你我从头开始重建我的整个钥匙链多少次。过期的条目破坏了东西,更换机器破坏了东西,你明白了。我建议回到 Apple 在您获得 SDK 的页面上提供的分步说明。很少有人可以发布应用程序——您需要像组长一样做所有事情。

      【讨论】:

        猜你喜欢
        • 2016-06-09
        • 1970-01-01
        • 1970-01-01
        • 2014-07-05
        • 1970-01-01
        • 2012-08-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多