由于帐户权限,validation失败

我已经通过iTunesConnect被团队pipe理员添加为团队成员,我正在尝试创build一个存档并进行validation。 它失败,因为标题说:

验证失败的消息

另外,如果我尝试让Xcode自动修复,我得到这个错误:

验证失败的消息

团队代理在iTunesConnect中创buildiOS分发configuration文件,根据文档,团队成员实际上不能创build证书:

分配给每个会员级别的权限

但这就是为什么Team Admin为我创build它们的原因,但是看起来我的Xcode试图创build证书,而不是下载和使用它们(同时validation归档)。 任何ide为什么会发生这种情况,以及如何validation档案并上传到iTunesConnect?

Certs总是与私钥配对。 您需要证书/密钥对正确签名。

由于您的团队代理创build了分发证书,所以证书/私钥在其计算机的钥匙串上。 即使您要下载证书,也会丢失私钥。 您的团队代理将需要打开钥匙串应用程序,将其导出,发送给您,然后您需要将其导入您的钥匙串。

在这一点上,假设您也有正确的configuration文件下载,并具有正确的构build设置,签名应该工作。

首先,Xcode试图创build一个证书,因为它认为你的代码签名设置有问题。 这可能意味着几件事情:

  1. 您没有有效的iOS分发证书。 要检查这一点,进入钥匙串访问应用程序,并检查你有一个绿色的复选标记,当你从左边的列表中select证书。

    ios证书有效期

    如果无效,它可能已在苹果开发者网站上被撤销,或者可能已经过期。

    另外,请确保从Apple的开发人员网站下载适当的configuration文件和证书。 您的团队pipe理员唯一需要发送给您的是私钥。 如果私钥没有连接到您从苹果开发者网站获得的证书,那么您的密钥是错误的。

  2. 您可以拥有一个有效的证书,但是缺less必要的私钥,允许您使用该证书签名。 这是使用证书签名的必要条件,也会导致Xcode在提交时尝试生成新的证书。 确保您可以扩展证书以查看下图中项目3中显示的私钥。 钥匙串访问有效证书和相关私钥的示例

  3. 项目代码签名设置引用的代码签名标识与钥匙串中的证书和密钥不匹配。 我build议您在项目的代码签名部分使用以下设置。
    对于Provisioning Profile ,select“自动”。 对于Code Signing Identity ,为Debug版本configurationselect“iOS Developer”,为Release版本configurationselect“iOS Distribution”。

    推荐iOS项目的代码签名设置

我还build议您参考一下苹果关于WWDC 代码签名新增function的精彩video,该video涵盖了代码签名iOS应用程序的关键组件。

对于我,我不小心启用了应用程序组(另一个应用程序包ID)。

禁用function中的应用程序组解决了这个问题