我已经被Team Admin通过iTunesConnect添加为团队成员,我正在尝试创建存档并对其进行验证。它失败了,标题上写着一条消息:
另外,如果我尝试让Xcode自动修复此问题,我会收到此错误:
团队代理在iTunesConnect中创建了iOS分发配置文件,根据文档,团队成员确实无法创建证书:
但这就是团队管理员为我创建它们的原因,但是,看起来我的Xcode试图创建证书,而不是下载和使用它们(同时验证存档)。任何想法为什么会发生这种情况以及如何验证存档并将构建上传到iTunesConnect?
答案 0 :(得分:5)
Certs始终与私钥配对。您需要证书/密钥对才能正确签名。
由于您的团队代理创建了分发证书,因此证书/私钥位于其计算机的密钥链上。即使你要下载证书,你也会错过私钥。您的团队代理需要打开Keychain App,将其导出,发送给您,然后您需要将其导入您的钥匙串。
此时,假设您还下载了正确的配置文件并且构建设置正确,则签名应该有效。
答案 1 :(得分:3)
首先,Xcode正在尝试创建证书,因为它认为您的代码签名设置有问题。这可能意味着几件事:
您没有有效的iOS分发证书。要检查这个, 进入Keychain Access应用程序并检查您是否有绿色 从列表中选择证书时选中标记 左
如果它无效,可以在Apple开发者网站上撤销,或者 它可能已经过期了。
另外,请确保您拥有相应的配置文件和 从Apple的开发者网站下载证书。唯一的事情 您的团队管理员应该发送给您的是私钥。如果是私人的 密钥无法连接到Apple开发者网站提供的证书, 你得错了钥匙。
您可以拥有有效的证书,但缺少必需的证书 允许您使用该证书签名的私钥。 这是使用证书签署的必要条件 还会导致Xcode在提交时尝试生成新证书。使 确保您可以扩展证书以查看第3项中显示的私钥 图片如下。
项目代码签名设置引用了代码签名标识
与您的钥匙串中的证书和密钥不匹配。我建议
您在项目的代码签名部分中使用以下设置
对于Provisioning Profile
,请选择“自动”。对于Code Signing Identity
,
选择“iOS Developer”作为Debug
构建配置和“iOS Distribution”
对于Release
构建配置。
我还建议您查看来自WWDC的What's New in Code Signing上的Apple精彩视频,其中包含代码签名iOS应用程序的关键组件。
答案 2 :(得分:0)
对我来说,我不小心启用了应用程序组(另一个应用程序包ID)。
在功能中禁用应用程序组解决了问题