无法验证并将应用程序提交到Mac App Store

时间:2012-10-04 08:34:11

标签: xcode macos code-signing mac-app-store

我已经无数次地为iOS应用程序进行了代码签名和提交。这次它让我对Mac App Store感到震惊。我反复收到同样的错误消息:

  

“我的名字”是有效身份。然而,   你没有相关的包裹身份。

我在堆栈溢出时已经认识到这两个主题: mas-code-signing-identity-private-keymac-app-package-identity-not-installed

那里面没有任何东西能解决我的问题。

这就是我(最可靠)重现此消息的方式:

  1. 我从“Mac Developer”或“3rd Party Mac Developer”开始清理所有证书和私钥。当然也是过期的。
  2. 撤销Mac认证门户网站内的所有内容。
  3. 创建App-ID(仅执行一次)
  4. 为Mac Development创建新证书。我只能假设这与iOS开发的调试证书相当。
  5. 为Mac App创建新证书。我再次假设这可能类似于iOS开发中的分发证书。
  6. 为完成原因,请为我的系统创建新的证书/配置文件。
  7. 创建生产配置文件。我只能假设这可能等同于iOS分发配置文件。
  8. 然后我下载了所有证书,并正确安装。有些人进入Keychain,其他人进入了偏好和XCode。
  9. 为了确保我重启XCode甚至整个Mac(不管怎样都不会改变令人沮丧的结果)。
  10. 我转到项目构建设置并选择生产配置文件,因为我假设“生产”等同于“分发”。更改目标构建设置中的代码签名标识也不起作用。虽然Apple在其文档中声称,对于App Store提交,必须在项目构建设置中更改签名身份。
  11. 我运行了一个存档版本。
  12. 我在管理器中选择存档,然后点击验证。
  13. 出现此错误消息:
  14.   

    “我的名字”是有效身份。然而,   你没有相关的包裹身份。

    我找不到任何指向术语“包标识”实际含义的指针。对我来说最令人沮丧的是,关于代码签名和提交过程的Apples文档中的术语混乱对我来说不是很清楚和准确。至少不像关于iOS App提交的相同过程的文档那样清晰和精确(使用完全不同的术语)。

    可能我明白了什么问题? Thanx提前任何帮助或指针。

4 个答案:

答案 0 :(得分:21)

好的,对于遇到类似问题的人们,我有一些重要的指针(除了苹果文档之外)。

  1. 错误消息完全是误导性的。
  2. 不要太认真对待Apples文档中的每一个字。
  3. 为解决这个问题,2分是最重要的:

    1. 除了所有其他profile-mess之外,您需要2张证书才能提交到Mac App Store(与iOS App Store提交的相同流程相反)。两者都必须与相应的公钥和私钥对一起安装。
      1. Mac App
      2. Mac Installer
    2. 需要在构建目标上设置代码签名,而不是项目。我不记得在哪里,但在Apples文件中有一个错误的描述。
    3. 最终我的提交工作依旧保持这两点。

答案 1 :(得分:3)

Keychain& amp;的XCode。

当Xcode使用证书时,他们需要您的钥匙串中只有一个证书。如果你有一个过期的,以及一个有效的,Xcode经常会失败。

因此,您使用Keychain Access查看您的钥匙串,并且看不到过期的证书。它还在那里! Keychain Access的默认设置会隐藏过期的证书。转到“视图”菜单,然后选择“显示过期的证书”。删除所有过期的,它们对任何事情都没有好处。

退出Keychain Acces并重新启动Xcode。在添加/删除证书时,Xcode通常需要重新启动。

此时,存档验证过程对我有用。

答案 2 :(得分:2)

这对我来说也是如此。

只想澄清一下,您绝对需要Mac App Distribution和Mac Installer Distribution证书。感谢Jacque上面的解释。它应该如下所示:enter image description here

答案 3 :(得分:0)

是的,问题是Mac安装程序分发证书。

解决所有问题并解决所有问题的最简单方法只需转到Xcode-> Window-> Organizer->设备,然后在右下角按下刷新并使用您的帐户登录... xcode将生成并下载所需的所有证书和配置文件。