我已经为 iOS 应用程序进行了无数次协同设计和提交。这次让我震惊的是 Mac App Store。我反复收到相同的错误消息:
"My Name" is a valid identity. However, you do not have the associated package identity.
我在堆栈溢出上认识到这两个主题: mas-code-signing-identity-private-key和 mac-app-package-identity-not-installed
里面没有任何东西可以解决我的问题。
这就是我(最可靠地)重现此消息的方式:
- 我清理了以“Mac Developer”或“3rd Party Mac Developer”开头的所有证书和私钥。当然还有过期的。
- 撤销 Mac 认证门户内的所有内容。
- 创建应用程序 ID(仅执行一次)
- 为 Mac 开发创建新证书。我只能假设这与 iOS 开发的调试证书相当。
- 为 Mac 应用程序创建新证书。我只能再次假设这可能类似于 iOS 开发中的分发证书。
- 出于完成原因,请为我的系统创建一个新的证书/配置文件。
- 创建生产配置文件。我只能假设这可能相当于 iOS 分发配置文件。
- 然后我下载了所有困惑的证书并正确安装。有些进入钥匙串(keychain),有些进入首选项和 XCode。
- 确保我重新启动 XCode 甚至整个 Mac(无论如何都不会改变令人沮丧的结果)。
- 我进入项目build设置并选择生产配置文件,因为我认为“生产”相当于“分发”。更改目标build设置中的协同签名身份也不起作用。虽然 Apple 在其文档中声称,要提交 App Store,必须在项目build设置中更改签名身份。
- 我运行存档构建。
- 我在管理器中选择存档并单击“验证”。
- 出现此错误消息:
"My Name" is a valid identity. However, you do not have the associated package identity.
我找不到任何指向术语“包标识”实际含义的指针。最让我沮丧的是,苹果文档中有关代码签名和提交过程的术语困惑对我来说似乎不太清晰和准确。至少不如有关 iOS 应用程序提交的同一流程的文档那么清晰和精确(使用完全不同的术语)。
我可能理解错了什么?感谢您提前提供任何帮助或指示。
最佳答案
好的,对于那些遇到类似问题的人,我有一些重要的指导(除了苹果文档之外)。
- 该错误消息完全具有误导性。
- 不要太认真地对待 Apple 文档中的每一个字。
为了解决这个问题,有两点最重要:
- 除了所有其他配置文件困惑之外,您还需要 2 个证书才能提交到 Mac App Store(与 iOS App Store 提交的相同流程相反)。两者都必须与其相应的公钥和私钥对一起安装。
- Mac 应用程序
- Mac 安装程序
- 需要在构建目标上设置协同设计,而不是在项目上设置。我不记得在哪里,但苹果的一份文档对此进行了错误的描述。
最终,我的提交通过坚持这两点而发挥了作用。
关于xcode - 无法验证应用程序并将其提交到 Mac App Store,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12723351/