如何解决Xcode中的签名证书问题

如何解决如何解决Xcode中的签名证书问题

System Preferences / Manage Certificates

上面是Xcode(版本11)的“系统偏好设置/管理证书”区域的图片

我知道这很麻烦,但是我想请社区提供帮助来清理我的Xcode签名证书。

由于签署证书的状态,我无法在Xcode中存档任何应用程序,甚至是“ Hello World”应用程序。我是Apple Developer上的付费开发人员。

下面是我系统的钥匙链访问的图片

先谢谢了。 LeonW53

[钥匙串访问图片][1]

解决方法

我现在比较聪明。

要提交到Apple App Store,您需要分发证书和IOS分发证书。两者都必须具有公钥和私钥。

私钥是指从中提交应用程序的计算机。私钥是Mac的密码,它将存档应用程序并提交。

要开始,您需要进入Mac发行版并打开Keychain Access应用程序(应用程序/实用程序/ Keychain Access)。进入后,在屏幕顶部,转到“钥匙串访问/证书助手/从证书颁发机构请求证书”。

注释1 :该请求需要一个用户电子邮件地址。使用您用来登录Apple Developer Site的电子邮件地址。您不需要通用名称。选择请求已保存到磁盘并继续。您将被允许选择证书的名称和保存文件夹。点击保存。

您可以根据此一个证书签名请求创建所有证书。

进入Apple Developer网站并登录(您需要为此付费)。使用您用于保存证书的Apple ID。

转到证书,标识符和配置文件。

单击左列中的证书。单击证书旁边的+,以添加新证书。

将询问您要创建哪种证书。

您需要选择Apple Development才能在Mac上开发应用程序。您可能需要进行iOS应用开发才能开发iOS应用,但我认为没有必要

要上传和分发您的应用,您需要Apple分发和iOS分发。

选择的任何一种,请单击“继续”,然后将要求您上载签名证书请求。在这里,您浏览到保存的证书签名请求(上面的注释1)。单击生成,将创建证书。单击“下载”,证书将被下载到Mac上的“下载”文件夹中。

您可以创建几种不同类型的证书,而无需重新创建CSR,一遍又一遍地使用同一证书。

在Mac上,您只需双击下载的证书,它们就会被添加到您的钥匙串中。

在XCode中,选择“应用程序文件夹树”的应用程序根目录,然后打开“签名和功能”。从下拉列表中选择您在Apple Developer Site中拥有的团队。还要选择自动管理签名。

在XCode中,您还可以转到XCode / Preferences / Accounts。您应该选择左侧的Apple ID,该ID与您登录Apple Developer Account相同。在右侧,您可以选择要进行上传的团队,然后单击管理证书。您需要有效的iOS开发,Apple开发和Apple发行证书。

注释2 如果有任何缺少专用密钥的证书,这是因为CSR是在与当前PC不同的PC上生成的,或者您没有以相同的身份登录苹果开发人员网站上的开发人员。这发生在我身上,这是因为我没有以与在“系统偏好设置”中登录PC相同的方式登录到开发者网站。

如果您存档,并且丢失了私钥,则存档将要求您使用解锁PC的密码和每个丢失的密钥登录到钥匙串。完成后,将创建存档。

注释3 对此有任何错误,您将生成带有非零退出代码的失败归档文件。苹果没有提供有关如何解决此问题的线索。

我目前的状况是我拥有有效的Apple Development,iOS Development和Apple Distribution Certificates,并且可以存档。除了有效的Apple分发证书,我还有两个缺少私钥的Apple分发证书。但是,我可以存档该应用程序。

要友善和安全。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?