我有一个用xcode 4开发iPhone应用程序的Macintosh。我现在有了一个新的Macintosh,安装了…一切。
打开基于旧Mac的Xcode项目时,我无法在配置为开发iPhone的iPhone上运行该应用程序。xcode 4管理器告诉我在配置文件中"找不到有效的签名标识"。
我想这与我以前在旧Mac上生成的.certsigningrequest文件有关(我有该文件的备份),但是在新Mac上我该如何处理它呢?
另一件奇怪的事情是,我在管理器中看不到我的5个现有配置文件(在Apple Provisioning Portal上定义),即使是在刷新之后和输入了我的配置门户登录名和密码之后:
- 你是怎么把你的身份传给别人的?最简单的方法是使用显示窗口底部的导入/导出按钮-从工作系统导出,导入到新系统。这样可以确保复制所有证书和配置文件。
- 但是,如果旧机器有坏的硬盘驱动器(没有备份)或者已经重新格式化了呢?
- 事实上,作为评论的问题显然是个糟糕的主意。(一个全新的stackoverflow问题。或者定位现有问题是正确的想法。)
对于Xcode4.2和更高版本(包括Xcode4.6),有一种更好的方法可以将整个开发人员配置文件迁移到新的机器上。在现有计算机上,启动xcode并执行以下操作:
打开管理器(shift-command-2)。
选择"设备"选项卡。
在"库"下的左上角选择"开发人员配置文件",该文件可能位于"库"标题下或"团队"标题下。
选择靠近左下角的导出窗户。Xcode要求您选择文件名和密码。
编辑Xcode 4.4:
使用xcode 4.4,在步骤3中选择库下的配置文件。然后用鼠标或命令a选择配置文件。
此外,苹果正在改进Xcode这一方面的管理方式,一些用户报告说右下角的刷新按钮可以做到这一点。因此,请尝试先单击"刷新",如果没有帮助,请执行导出/导入顺序。
由wp添加的xcode 4.6的图片
编辑Xcode 5.0或更高版本:
打开xcode->preferences('command'+',')
从列表中选择Apple ID。
单击窗口左下角附近的设置图标,然后选择导出帐户…Xcode要求您选择文件名和密码。
在新机器上,启动xcode并导入上面导出的配置文件。很有魅力。
Ankur添加的Xcode 5.0图片
- 我工作了几个小时,试图从钥匙链中导出和导入证书和私钥。谢谢
- 我必须进入"我的证书"并导出证书。它包括了密钥,所以不用担心导出它们。在几次尝试导入之后,Mac世界又恢复了正常:)
- 对于步骤3,我没有在库下列出"开发人员配置文件"。相反,我必须在"团队"下选择"我的团队名称"。
- 请告诉我如何使用命令行导入这个.developerprofile好吗?我只有对主机的ssh访问权。
- 我一直在得到"找不到有效的签名身份"!
- 我有两台以上的电脑用于开发。我导出了其中一个配置文件上的配置文件,但无法从"管理器>库>配置文件"页面导入。我必须转到"库>团队>myuserid"页面才能导入开发人员配置文件。
- @格拉多斯,谢谢。因为我的钥匙不见了,所以江户十一〔一〕法对我没有完全起作用。但是,在导出和重新导入我的开发人员配置文件(单击团队后的Export/Import)按钮)之后,它起作用了。
- 一切都很顺利。我必须在新机器上的xcode中选择"editor->developer profile->import",因为还没有开发人员配置文件的左侧选项卡。
- 我在更改苹果帐户密码时遇到了这个问题。这个答案的刷新选项对我有效。
- 苹果正在"改进"这种东西,但每一步都会带来新的痛苦。我还是一次又一次地拔头发…
- 我贡献了一张图片,帮助Xcode4.6用户更清楚地了解这一点。苹果你不让这容易吗?????
我今天碰到了类似的问题。不幸的是,我的硬盘死在我身上了,所以我不能进行这里接受的答案中提到的迁移。我必须执行以下步骤:
连接到Apple开发者会员中心,然后连接iOS临时入口。
吊销我的证书。
通过提供一对新的私钥和公钥来创建新证书。
删除所有以前的配置文件并创建新配置文件。
下载新的配置文件并通过拖动将其安装到Xcode中它们将显示在Dock中的xcode图标上。
这篇文章也提到了同样的行动。
- 谢谢,这对我很有效(我没有带我的旧Mac电脑来转移任何东西)。
- 谢谢你@tiguero..我的硬盘也坏了……在从高清恢复数据后,我也在努力寻找答案。但当我刚刚使用keychain和provisioning门户重新创建证书时。它解决了所有问题。注意:我们可能需要修改配置文件并向其添加新证书,然后重新下载并重新安装所有证书。干杯编码员……我希望这能帮助人们寻找答案。
- 这是非常重要的知识。(在创建新证书之前撤销之前所需的证书并不直观,但这对于苹果公司来说无疑是一个很好的操作实践。但是,如果你丢了钥匙,你的生活会很艰难。)
- 如果你撤销了一个已经被用于在生产应用程序中签名的证书,这是否会影响到应用程序?
- @Emmanuelay如果您的iOS开发者计划会员资格有效,则您在应用商店中的现有应用程序不会受到吊销证书的影响。请访问:developer.apple.com/support/technical/certificates
确保您的证书在"登录"密钥链中。突出显示登录密钥链如果看不到,请搜索它。然后将证书拖到"登录"字样上。关闭并打开xcode,ta da。
- 很多时候,除了我的证书在系统中而不是登录之外,所有事情对我来说都是正确的。温我把它们移过去了,一切都很有魅力!
- 噢,简单的点击并不像developer.apple.com/ios/manage/overview/index.action中描述的那样工作。应手动选择位置
为了错误
0
请参阅苹果发布的解决此问题的步骤。
关于iOS门户上"5个现有配置文件"的问题,xcode 4.x管理器>设备选项卡>库下的配置文件部分缺少这些文件。
我建议您按照以下步骤恢复丢失的配置文件,并涵盖xcode错误的情况,其中xcode 4.1-4.2.1错误地从iOS门户上的"活动"本地库配置文件中删除。
- 对。苹果发布的步骤运行正常。
- 我喜欢这个答案,因为它确实有效,他们的文档会保持更新
您需要复制旧Mac的私钥和证书。打开旧Mac上的keychain access并查看登录keychain的keys类别:密钥应该在那里。您需要同时导出公钥和私钥,然后将yourkey.pem和yourkey.p12复制到新的mac。
使用keychain访问导入它们可能会失败,至少在10.6以下;您可以使用以下命令:
1 2
| security import yourkey.p12
security import yourkey.pem |
- 我以前试过这个。这不起作用。
- 密钥链访问有时无法导出或导入私钥。您可以使用security命令行实用程序代替它。我保证它能用。
- @我可以删除新Mac上的一些现有条目吗?
- 您可以删除不再需要的条目。当然,如果你不确定是否需要它们,最好不要删除它们。
- 您应该使用Organizer的导出/导入功能来迁移您的开发人员配置文件。看看我刚刚发布的答案。
- 同意。使用导出/导入功能。它起作用了!
- 我试了所有其他的步骤,但它们都不起作用。我试过这一个,.p12导入很好,但是.pem说它是导入的,但是当我进入keychain时,它们不会显示。Xcode仍然说签名证书无效…有什么建议吗?
- 我有一个非常老的Mac(OSX 10.6.8)和一个新的Mac(OSX 10.8.4)。我刚刚使用了旧机器的钥匙链访问中私有钥匙的标准导出,在新机器中它们导入得很好。之后,Xcode Organizer中的移动资源调配内容都是"有效的"。
你必须去你的开发者网站,去你的证书,为你当前的Mac生成一个新的证书,并将它添加到你的钥匙链中。
然后您需要再次添加配置文件。现在应该可以了。基本上,您需要执行与第一次获得dev证书时相同的步骤。
我也有同样的错误,但问题略有不同。我们有一个开发团队,但我们都使用相同的Apple ID(开发人员帐户),所以当我生成配置文件时,我总是得到与主题问题相同的错误。然后,尽管我下载了证书(作为开发配置助手步骤的一部分得到提示),但我仍然收到了这个错误。然后我发现问题是我们的Apple开发人员帐户使用的是在我的工作伙伴计算机上生成的证书,所以我需要撤销它,生成一个新证书,然后创建配置文件。
总结经验教训是,用于配置配置文件的证书必须在使用配置文件的同一台计算机上生成。当您的开发团队共享同一个苹果ID时,这一点尤其重要。希望它能帮助别人
我在这个错误上的2分,即使与导出/导入方案无关:
添加移动配置证书(即PROV文件)时,不要将文件从finder拖到keychain access。相反,只需双击finder中的prov文件,同时保持keychain访问应用程序在某处运行。
实际上,我在keychain中看到了我以前的配置项(黄灯的那个)被一个新的、绿色的、同名的和app id.hth替换。
- 谢谢,同时单击xcode管理器下的配置文件下的添加失败,而如果我双击.mobileProvision文件,一切正常。
今天早上我刚打开一个有不同证书的旧应用程序,并允许它访问密钥链时,遇到了这个问题。我的另一个应用程序运行得很好,停止使用此错误。我一直在拔我的头发,直到现在,当我简单地这样做:
0
在新窗口中,在Signing identities的左下角,按下+按钮,选择iOS Development。它将重新添加标识,然后我的问题解决了,应用程序再次在设备上运行。
我的Mac操作系统最近崩溃了。我重新安装了Mac 10.7.4和XCode 4.5。但是所有的配置文件在organizer中都显示了以下信息。
1
| Valid Signing identity not found |
我挣扎着找了几天的帮助。后来我意识到,如果您已经从一个系统迁移到另一个系统(或格式化您的系统),您需要将您的私钥从您的密钥链从旧系统导出到新系统(或安装的新操作系统)。
您还可以在Organizer中导出您的开发人员配置文件/团队开发人员配置文件。
1
| Organizer > Teams > Developer Profile > Export |
希望它有帮助。
我和Tiguero发生了同样的事情(谢谢你的回答,这给了我希望),但这里有一种方法可以在不删除所有配置文件的情况下消除valid signing identity not found错误。
如果您在一个新系统上,并且无法从另一个系统中检索您的密钥,那么您确实需要为Xcode删除和重新生成新的Development和Distribution证书。您可以通过Xcode或使用钥匙链访问的老式方法来实现这一点。
然后进入Provisioning,在每个选项卡中,Development和Distribution中,单击要更新的配置文件旁边的Edit,然后单击Modify。
您将看到一个证书列表,您必须勾选刚才所做证书旁边的框,然后勾选Submit。
一旦你这样做了,进入你的Xcode(我用的是4.3.3)Organizer > Devices > Library > Provisioning Profiles,您在其中收到错误消息,单击Refresh。一旦您回答了进入开发人员登录的提示,organizer将重新下载配置文件,错误消息将消失。
- 此外,在构建设备之前,您可能需要进入构建设置面板,选择新的iPhone开发人员配置文件以避免代码符号错误。
我或多或少地解决了"找不到有效签名标识"错误:
确保iOS开发人员程序中的证书也列在您的钥匙链访问中并且有效(比较发行日期)。如果不是,请使用Apple参考资料中的说明从旧Mac传送它,或者从网站和您的钥匙链访问中删除它,然后重新创建它,重新下载它并将其拖动到X代码上。
删除任何现有的开发或分发配置文件,并根据新证书重新创建它们,重新下载它们,并从keychain access验证所有内容都有效。
我有这个问题,因为与配置配置文件关联的IOS开发证书不在我的钥匙链中。我重新安装了OSX,结果就是这样。我做了以下工作:
- developer.apple.com,位于证书、标识符和配置文件下
- 选择相应的(有效的)iOS开发证书,下载
- 双击下载的文件,它会被添加到钥匙链中。
- 组织者中的错误离开
如果您没有有效的证书,请生成一个新的证书,并使用它创建一个新的配置配置文件。
似乎可以将证书和配置文件从一台计算机传输到另一台计算机,因此,如果由于迁移了开发人员计算机而在设置证书和/或配置文件时遇到问题,请查看以下内容:
如何在macs之间传输xcode证书
对我来说,诀窍是发现即使我可以在登录时看到开发人员证书,它也不在我的证书下。修复方法是从旧Mac上的密钥链导出证书,然后将其导入新Mac上的"我的证书/登录"。
还没有人提到这一点,这可能不是一个常见的问题,但Xcode5也有类似的问题:确保在Mac的钥匙链访问中选择了默认的钥匙链。我尝试了一个新安装的山狮和删除了一个钥匙链,这恰好是默认的。在将另一个密钥链设置为默认值(右键单击该密钥链并选择Make keychain"keychain_name"default)之后,Xcode能够设置有效的签名标识。