饥荒赃物袋钥匙代码:Xcode代码签名错误 因为钥匙串中没有钥匙

你可能会想,没有再这样的问题,那里已经有成千上万的话题。但是,我还没有能够找到我需要解决这个问题的答案。

这些主题都没有 Keychain 那么深入。

当我试图将我的应用程序部署到 iPhone 时,我收到以下消息:

Code Sign error: The identity 'iPhone Developer: [Name] ([ID])' doesn't match any valid, non-expired certificate/private key pair in your keychains.

现在,正如所说,我一直在寻找多个指南或修复,但是,他们似乎都没有解决这个问题。

我试过的东西:

使用 Apple 的演练进行无数次应用程序部署

已在互联网上搜索应用程序部署指南

已更改“xcodeproj”包中的“pbxproj”文件的内容。

使用 Xcode 4.6 中的“刷新”按钮从 Apple 服务器检索所有可用的配置文件(允许您自动获取)

在尝试了所有这些方法之后,我仍然无法解决这个问题。我看到的一个问题是,在第一手,Keychain 中的证书显示无效状态,现在已经解决了。

但是,如果我是对的,应该有两个密钥附加到证书。公钥和私钥,这些都没有显示。

“钥匙串访问”的“钥匙”选项卡中也没有显示任何钥匙。

解决方案

(感谢 nsgulliver)

按照 nsgulliver 的帖子(标记为解决方案)所说的做所有事情。

如果你已经有一个活动的证书,点击撤销按钮,这不会造成任何麻烦,你只需要重新创建密钥,然后将生成一个新的证书。

确保您已安装 Apple 的 WWDR,以将证书颁发机构标记为有效。

请遵循默认的 Provisioning Assistant 准则。

2

安装在设备上或为目标签名的配置配置文件可能无效,请尝试转到Organizer->Provisioning profile并查看配置文件是否具有有效状态?如果没有,请尝试删除 & amp;刷新它们,如果它们在刷新后显示为有效,则可能会解决您的问题,如果没有,则应从keychain中删除所有条目并删除配置门户上的配置文件,然后尝试从头开始创建

2

您无法重新创建匹配的密钥,这将它们的全部目的。您需要找到旧密钥或从头开始签名过程。

您使用的是生成密钥的同一台计算机吗?如果不是,请转到另一台计算机,导出开发人员配置文件,然后在新计算机上导入它。

您可以从备份中恢复密钥吗?如果没有,请停止正在执行的所有操作,并在执行其他操作之前配置计算机进行备份。

如果你真的被卡住了,你将不得不从一开始就遵循签名过程,在那里你向证书颁发机构申请证书。这将生成新的密钥,你将不得不创建匹配的配置配置文件,然后设置你的应用程序用这些配置文件签名。删除旧的配置配置文件,没有旧的密钥它们将是无用的。

2

您需要锁定钥匙串。请看截图:

enter image description here

1

当您遇到代码签名问题时需要阅读:

Technical Note TN2250:iOS Code Signing Troubleshooting

没有什么比真正了解您的证书中有什么,没有什么,必要的部分保存在哪里以及如何使用它们更有帮助。这不是您最后一次遇到代码签名问题,本技术说明提供了一个长长的清单,可以帮助您确保一切都在正确的位置,以帮助您开发应用程序并最终签名并提交到应用程序商店。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(224)
C90食戟之灵田所惠本子:ISO C90禁止可变长度数组(iso c90 forbids variable length arr
上一篇
Cos6分之派:十分之九的 Unicode
下一篇

相关推荐

  • comeandgetyourlove音乐爱就在你身边

    Come and Get Your Love是一首热门的歌曲,由美国摇滚乐队Redbone演唱。这首歌曲于1974年发行,被收录在他们的专辑《Wovoka》中。歌曲以放克曲风为主,旋律活泼,曲调悠扬,歌词朗朗上口,深受歌迷喜爱。…

    2023-06-29 07:47:31
    0 12 77
  • codeblocks无法编译运行:Codeblocks无法编译运行的解决方案

    codeblocks无法编译运行的原因可能有很多,下面以一段简单的C语言代码为例,来说明codeblocks无法编译运行的情况。…

    2023-07-11 08:01:55
    0 79 81
  • gitlab ci 自动化部署:使用 Gitlab CI 自动化部署提升开发效率

    GitLab CI 自动化部署是一种基于 GitLab CI/CD 的自动化部署方案,可以实现快速、可靠的部署流程。它将代码提交、构建、测试、部署等步骤集成在一起,使得开发者可以更加轻松地完成部署工作。下面是一个示例 .gitlab-ci.yml 文件,可以帮助你实现 GitLab CI 自动化部署:…

    2023-05-20 05:45:38
    0 17 57
  • xl和xe汽车cvt:探索XL和XE汽车的CVT技术优势

    XL和XE汽车CVT是一种变速器,它使用液力变矩器代替传统的机械变速器,以达到更高的效率。它的工作原理是,当发动机输出功率时,液力变矩器就会将这些功率转换为液压能量,然后将能量传递到变速器的输出轴上,从而实现变速。…

    2023-05-16 07:36:03
    0 79 13
  • js添加css:This is a Title

    使用js添加css可以通过修改元素的style属性来实现,具体代码如下:…

    2023-05-27 12:30:24
    0 50 64
  • css 字符间距:### 世界上最美的地方

    示例示例CSS 字符间距是指在文本中的字符之间添加间距,以增强文本的可读性。它可以使文本更容易阅读,也可以使文本看起来更美观。代码示例:…

    2023-04-15 08:45:29
    0 95 21
  • git 删除commit记录:回滚Git Commit记录

    git删除commit记录可以使用git reset命令。使用方法:…

    2023-07-07 04:31:44
    0 70 98
  • java实现tcp:使用Java实现TCP网络编程

    TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层协议。它使用三次握手来建立可靠的连接,并且在数据传输期间可以检测丢失的数据包并重新发送。…

    2023-01-31 10:33:14
    0 12 44

发表评论

登录 后才能评论

评论列表(58条)