证书已过期或已被撤销

时间:2016-04-18 08:38:16

标签: ios iphone xcode

不久前,我开始编写一个新的ios应用程序,经过长时间的休息后,我再次对它进行处理,并且几乎完成了。

我在模拟器上测试但是当我尝试将它安装在我的iphone 6上时(我过去已做过的事情)我收到一个错误,告诉我我的应用程序无法安装,因为用于签名的证书此应用已过期或已被撤销。

我尝试了很多东西:

  1. 我从xcode,keychain和apple developer中删除了所有证书和provisioninig配置文件,让xcode为我创建新的
  2. 我删除了xcode并从开头做了整个过程
  3. 但这并没有解决我的问题。

    知道可能是什么问题吗?

31 个答案:

答案 0 :(得分:268)

<强>解决方案

首先按住 Shift(⇧)+ Command(⌘)+ K 清理项目或 选择产品&gt;的清洁

然后

  1. 转到XCode 菜单&gt;的偏好

  2. 选择帐户&gt; 团队&gt; 查看详情

  3. 从“配置配置文件”列表中选择任何配置文件

  4. 右键单击&gt;选择在Finder中显示。然后,您将看到所有配置文件列表

  5. 从文件夹中选择所有配置列表并将其移至垃圾箱

  6. 点击配置文件列表下方的全部下载,下载所有配置文件。

  7. 现在,再次运行它应该工作!

答案 1 :(得分:78)

我遇到了这个问题并且能够找到答案。

可以找到here的答案。

这是你必须做的事情

  1. 转到偏好设置 - &gt;帐户
  2. 按您的帐户
  3. 点击&#34;查看详细信息&#34;
  4. 点击&#34;全部下载&#34;在左下角。
  5. 这些步骤解决了我的问题。

答案 2 :(得分:31)

我的解决方案略有不同。它可能来自更新或我的特定用例。

使用Xcode 7.3.1

我正在使用文件共享系统(dropbox)在两台不同的计算机上进行开发。使用Download All解决方案并没有为我解决问题。

按照上面的链接,我接受了

的建议
  

删除〜/ Library / MobileDevice / Provisioning Profiles

中的所有配置文件

(这是一个极端的措施,但Xcode现在应该下载你需要的东西)

Xcode提示自行更新。

在不同机器上进行开发切换时,我仍然遇到问题。它出现以下警告/失败:

  

此应用程序的application-identifier权利与已安装的应用程序的权利不匹配。这些值必须匹配才能允许升级。

该问题的解决方法是从设备中删除开发项目,然后重新安装。

答案 3 :(得分:25)

简单&#34;清洁&#34; ( Shift(⇧)+ Command(⌘)+ K )解决了我

答案 4 :(得分:12)

对于那些无法在帐户>团队>查看详细信息中找到“查看详细信息”按钮的人,这是我在 Xcode 10 上解决的方法:

  1. 在〜/ Library / MobileDevice / Provisioning \ Profiles /
  2. 中删除所有供应配置文件
  3. 通过按住 Shift(⇧)+ Command(⌘)+ K 选择产品>清洁
  4. 来清洁项目
  5. 重新启动xcode

然后重试。

答案 5 :(得分:9)

发现另一个案例导致Certificate has either expired or has been revoked出现血腥Xcode 9错误。如果您尝试使用有效证书进行签名但在密钥链的同一个团队中确实有另一个已吊销的证书,则Xcode会抛出此错误。要检查您是否确实已撤销证书,请参阅Xcode -> Preferences -> Accounts -> Your Apple ID -> Your Team -> Manage Certificates。使用Keychain Access删除已撤销的证书可解决此问题。看起来像是Xcode中的另一个代码签名错误。

答案 6 :(得分:4)

Xcode 11 .3.1中,界面已从所有当前答案中更改。

  1. 转到菜单“ Xcode”>“偏好设置”>“帐户”。
  2. 在项目的左侧选择正确的Apple ID。
  3. 如果配置文件仍处于活动状态,请单击“管理证书”。
  4. 如果有任何吊销的证书,请右键单击吊销的证书和“删除证书”。在所附的屏幕截图中,应删除以红色框显示的证书。

Revoked Certificate Screenshot

删除最新的“创建日期”证书应刷新您的证书,但建议删除所有已撤消的证书。

删除已吊销的证书后,您应该可以重建应用程序。

答案 7 :(得分:3)

在xcode 8中, 转到首选项 - &gt;帐户 按您的帐户 点击“查看详细信息” 关于你需要的个人资料的模式 点击左下角的“全部下载”。

答案 8 :(得分:2)

我只是取消选中“自动管理签名并选择团队再次检查它,它对我有用 enter image description here

答案 9 :(得分:2)

这对我有用:

  1. 转到 Xcode -> Preferences 并选择 Accounts 标签。
  2. 选择您的帐户并点击右下角的 Manage Certificates
  3. 您会看到 Signing certificate for "User name" manu 弹出。
  4. 点击底部的 Apple Development,如下所示,然后按下 Done 按钮。

enter image description here

答案 10 :(得分:2)

我遇到了这个问题,它看起来像是 xcode的10.x 新构建系统中的错误。

  1. 转到文件>项目设置 将构建系统更改为使用Legacy build system

  2. 通过按住Option(⎇)+ Shift(⇧)+ Command(⌘)+ K或按住Option(⎇)并选择 Product> Clean Build Folder ,对项目进行深层清理

  3. 在设备上运行

答案 11 :(得分:2)

1.将Mac计时设置更改为自动(打开日期和时间首选项检查自动设置日期和时间)。

2.之后转到您的X代码,清理并运行代码。

3.如果失败,请退出Apple配置文件并删除XCode中的所有自动创建的配置文件 - 首选项并将所有配置配置文件移至垃圾箱并下载为新文件。然后再次登录并运行您的代码

答案 12 :(得分:2)

最终对我有用的是在下载最新的配置文件后关闭并重新启动我的MacBook。

答案 13 :(得分:2)

- 打开钥匙扣 - 选择它以检查所有证书。 - 检查状态是否有效。 - 如果证书无效,则右键单击它并删除该证书

答案 14 :(得分:2)

Xcode 8的新问题,对我有用的是关闭目标的常规选项卡上的新“自动管理签名”复选框,然后重新打开。

这将启动一个入门向导,为Xcode 8正确设置。

答案 15 :(得分:1)

何时删除和重新下载配置文件,以及&#34; Clean&#34;帮我做到这一点:

偏好&GT;帐户与GT; Apple ID&gt; 选择您的acc &gt; 选择您的团队&gt;查看详细信息...&gt; 重置您的签名身份(在我的案例中为iOS开发)。

这一直对我有用。

答案 16 :(得分:1)

如果您有一个在设备上运行的主机测试目标,请确保它使用与应用目标相同的代码签名身份。否则,在测试和调试应用程序之间切换时,您将必须清洁。

当我们关闭主机测试目标中的代码签名作为构建时增强功能时,我在Xcode 11.4.1中遇到了这个问题。重新打开代码签名进行主机测试后,在运行主机测试目标和应用程序之间切换时,我不再遇到此问题!

答案 17 :(得分:1)

完成上述所有步骤后,清洁和重建也是一个因素。

答案 18 :(得分:0)

通过Xcode Version 10.1,我完成了以下步骤:

  1. 转到XcodePreferences并选择Accounts标签
  2. 在“帐户”部分中,单击窗口角落左下角的齿轮,然后单击Export Apple ID and Code Signing Assets...,将其导出到文件中,例如Test.developerprofile
  3. 删除您正在使用的个人资料
  4. 再次单击齿轮,选择Import Apple ID and Code Signing Assets...,然后选择以前导出的文件Test.developerprofile
  5. 现在执行Clean Shift(⇧)+ Command(⌘)+ K )和Build Command(⌘)+ B
  6. 再次运行

答案 19 :(得分:0)

更改电子邮件帐户后,我遇到了这个问题。

尝试了许多可能的解决方案之后,唯一可行的解​​决方案是仅从我的Apple developer account中删除当天创建的证书。 (这不是我帐户中唯一的证书)似乎自动创建了一个新证书,它与主要证书冲突。

答案 20 :(得分:0)

我有同样的问题。 清理项目(Shift(⇧)+ Command(⌘)+ K)后,我解决了,退出Xcode并再次打开。

答案 21 :(得分:0)

到目前为止提供的解决方案都没有工作(尽管它们都是正确的)并且从磁盘中删除Xcode项目并从repo重新克隆它解决了它。

答案 22 :(得分:0)

使用Xcode 10.3

请按照以下步骤操作:

  1. 转到https://developer.apple.com
  2. 关注Account> Certificates, Identifiers & Profiles> Devices
  3. 从列表中找到iPhone,然后单击它。它将打开详细信息页面
  4. 先禁用然后再启用
  5. 转到Xcode选择您的iPhone并运行它

不要忘记去Settings> General> Device Management来信任开发者帐户

答案 23 :(得分:0)

Xcode 11.1需要直接从Xcode生成сertificate

所以您之后在https://developer.apple.com上会有类似的东西

enter image description here

答案 24 :(得分:0)

有时,由于您做了一些事情,XCode 中的Bundle Identifier 正在发生变化。确保您在Apple Developer帐户中定义的Bundle Identifier与XCode中的{{1}}完全相同。

答案 25 :(得分:0)

有时候,在Xcode 8中你可能会发现自己处于一个撤销 - 重新生成周期,你让Xcode 8“修复”证书和配置,然后Xcode发现新的/重新生成的证书也是无效的,你会回到撤销,它一直在发生。

在这种情况下,请检查您的MacOS时间!如果您将其设置为其他时间,而不是实际当前时间,则新证书可能始终“尚未”有效。

答案 26 :(得分:0)

以防万一:Xcode 11.x 我还撤销了(删除)App Developer帐户中的证书。 然后我以为我也已在“钥匙串访问”中删除了证书,但是在尝试将应用程序更新上传到AppStore时始终收到错误消息。

然后,我发现钥匙串访问中有两个单独的位置,其中一个保留了证书(在钥匙串中选择了登录后,在密钥下足够有趣),而在另一个中,私钥(当然是在钥匙串中的项目证书)。我确保两个都被删除,现在一切都很好。

答案 27 :(得分:0)

重命名您的目录,不包含小数点和&amp; 0(零)。

像这样,我解决了。

答案 28 :(得分:0)

更改捆绑标识符并将其设置回来,为我解决了这个问题

答案 29 :(得分:0)

您也可能因 Apple Worldwide Developer Relations 证书颁发机构证书冲突而收到此错误。

对我有用的是删除“KeyChain Access”应用程序中系统和登录钥匙串中的所有 Apple Worldwide 开发人员证书(不是显示您公司名称的证书)。使用 Xcode (9.2) 重新启动和重建,问题就消失了。

答案 30 :(得分:-1)

这不是我面临的大问题。只需清理项目,然后重新启动您的xcode !! 希望它将为您服务!它为我工作。 :)

或 首先通过按住Shift(⇧)+ Command(⌘)+ K或选择“产品”>“清理”

清理项目

然后

转到XCode菜单>首选项

选择帐户>团队>查看详细信息

从“配置文件”列表中选择任何配置文件

右键点击>选择在Finder中显示。然后,您将看到所有配置文件列表

从文件夹中选择所有临时配置列表,然后将其移至回收站

通过单击“配置文件”列表下方的“全部下载”来下载所有配置文件。

现在,再次运行就可以了!