首页 文章

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

提问于
浏览
11

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

“我的名字”是一个有效的身份。但是,您没有关联的包标识。

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

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

多数民众赞成我(最可靠)重现这个信息:

  • 我从“Mac Developer”或“3rd Party Mac Developer”开始清理所有证书和私钥。当然也是过期的。

  • 撤销 Mac 认证门户中的所有内容。

  • 创建 App-ID(只做过一次)

  • 为 Mac Development 创建新证书。我只能假设这与 iOS 开发的调试证书相当。

  • 为 Mac App 创建新证书。我再次假设这可能类似于 iOS-development 中的分发证书。

  • 为完成原因,为我的系统创建一个新的 certificate/profile。

  • 创建生产供应配置文件。我只能假设这可能等同于 iOS 分发配置文件。

  • 然后我下载所有证书混乱并正确安装。一些进入 Keychain,其他人进入了 Preferences 和 XCode。

  • 为了确保我重新启动 XCode 甚至整个 Mac(无论如何都不会改变令人沮丧的结果)。

  • 我转到项目构建设置并选择生产供应配置文件,因为我假设“生产”等同于“分配”。更改目标构建设置中的代码签名标识也不起作用。虽然 Apple 在其文档中声称,对于 App Store 提交,必须在项目构建设置中更改签名身份。

  • 我运行存档构建。

  • 我在管理器中选择存档,然后单击“验证”。

  • 出现此错误消息:

“我的名字”是一个有效的身份。但是,您没有关联的包标识。

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

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

4 回答

  • 21

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

    • 错误消息完全是误导性的。

    • 不要太认真地对待 Apples 文档中的每一个字。

    为了解决这个问题,2 分是最重要的:

    • 除了所有其他 profile-mess 之外,您需要 2 个证书才能提交到 Mac App Store(与 iOS App Store 提交的相同流程相反)。两者都必须与相应的公钥和私钥对一起安装。

    • Mac App

    • Mac 安装程序

    • 代码签名需要在构建目标上设置,而不是在项目上设置。我不记得在哪里,但在 Apples 文件中有一个错误的描述。

    最终我的提交工作保持这两点。

  • 3

    Keychain 和 XCode 还有一个问题。

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

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

    退出 Keychain Acces 并重新启动 Xcode。当 adding/deleting 证书时,Xcode 通常需要重新启动。

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

  • 2

    这对我来说也是如此。

    只想澄清一下,您绝对需要 Mac App Distribution 和 Mac Installer Distribution 证书。感谢 Jacque 上面的解释。它应该如下所示:
    在此输入图像描述

  • 0

    是的问题是 Mac Installer Distribution 证书。

    解决所有麻烦的最简单方法就是转到 Xcode-> Window-> Organizer-> Devices,然后在右下角按 Refresh 并使用您的帐户登录... xcode 将生成并下载所有需要的证书和配置文件。

相关问题