在调试模式下找不到此可执行文件的有效配置文件


239

我在尝试在设备上调试应用程序时收到此错误。

我创建了开发配置文件,就像在开发人员门户网站上提到的那样。在概要文件中选择了我的开发设备,然后从Target的代码签名身份菜单中选择了正确的概要文件。我多次创建了配置文件,还删除并重新安装了它,并重新创建了项目,但是每当我尝试在设备上调试时,我都会得到它。

顺便说一句,即席分发规定概要起作用。

我一整天都在寻找解决方案,但一无所获。有人有解决方案吗?


2
Apple在预配门户中提供了详细说明:证书预配配置文件
Casebash 2011年

奇怪的是,我仅在Xcode Organizer控制台中看到此错误,但该应用程序仍然可以安装和运行,没有任何问题。我正在使用临时配置文件和应用程序商店分发配置文件进行构建。可能会抱怨临时配置文件,但与应用商店分发配置文件一起运行吗?
丰富的

我遵循了本教程,这对我有用!希望能帮助到你。youtube.com/watch?v=dUdHifLTyrE
matiaslezin 2012年

我遇到过同样的问题。该设备未添加到配置文件中,这就是原因。
凯林2015年

1
如果您在使用该应用程序一周后收到此消息,并且正在使用免费的开发者帐户,则必须重新安装
Ryan Haining

Answers:


186

可能是因为预配置门户无法识别您的iPhone。

解:

1)在Xcode中,转到->构建->清理所有目标。

2)在“群组和文件”->“目标”->“展开”->右键单击您的应用程序,然后选择“清理”您的应用程序

3)转到->窗口->整理器

4)在左侧的“设备”选项卡中,选择您的iphone

5)在所选iPhone的“配置”部分中,删除所有当前配置文件(如果有)

6)拔下iPhone,然后重新插入。

7)转到->窗口->整理器->右键单击您的iPhone->将设备添加到配置门户

8)现在确保在编辑项目设置->构建->代码签名中选择了适当的代码签名身份

构建并运行。祝好运!


7
不必要。我完成了您提到的所有步骤,并且我的设备已经/已经在设置门户中列出,但仍然出现此错误。
Nate

35
现在已经过时了。在Xcode 4.3+中,转到管理器>选择设备>单击屏幕底部的“添加到门户”,您就可以离开了!如果您在第一次输入Xcode Organizer时输入的密码错误,它仍会安装设备,但没有有效的证书。“库”下的刷新配置文件对设备的关联证书没有影响。瞧!
pchap10k 2012年

1
我认为这不会奏效,但完全可以。谢谢!节省了我很多小时的头痛。:)顺便说一句,我正在使用xcode 4.5。
莫娜2012年

1
当“添加到供应门户”时,我收到一个错误,我需要在developer.apple.com网站上接受新协议,首先使用Web浏览器进行了此操作,然后效果很好。谢谢!
haa 2013年

11
过时的方式。这与xCode 6完全不同...请更新您的答案。
stevebot

45

在Xcode 10中,我通过将项目的构建系统从“新构建系统”切换到“旧版构建系统”(文件->项目设置)来解决此问题。


5
最初的问题是“我一整天都在寻找解决方案,但一无所获。有人有解决方案吗?” 关于“在调试模式下找不到此可执行文件的有效配置概要文件”的错误。在新版本的Xcode中更改构建系统可以解决该问题。发生这种情况时,针对各种情况发布了很多解决方案。

3
@ user191712忽略想要的主持人。您的回答使我摆脱了数小时与错误无关的兔子洞。谢谢!
remondo '18

我忘了检查此配置... du‍♂️感谢花花公子!
cesarak

非常感谢。它为我工作,没有浪费时间!
丹尼斯(Deniz)'18

1
由于某种原因,我仍然不明白,这也是我与cordova-ios@4.5.4项目和XCode 10.0有关的问题。
Żabojad

41

我有同样的问题。一切正常:设备已在IOS Provisioning Portal中注册;证书已下载,我的应用程序的开发配置文件也已下载。

所以解决方案!!!

目标>获取信息

选择要发布的配置(这是魔鬼)在代码签名中,在“代码签名身份”中检查“ iPhone开发人员”。关。

在目标上选择“清理目标”,然后运行该应用程序。

祝好运。


67
目标->获取信息在哪里?
Septiadi Agus

1
我看到我可以将代码签名身份设置为构建设置上的开发者。
Septiadi Agus

2
没有“目标->获取信息”的屏幕截图?找不到。
GusOst 2015年

1
@Rafael什么是Target->获取信息?
skywinder '16

1
请说明什么是“目标>获取信息”。
bitops

28

就我而言,这是因为在钥匙串中存在几个版本的开发人员证书。

从“我的证书”和“证书”中删除iPhone Developer证书,然后从开发中心下载最新的证书并进行安装(双击.cer文件)

解决了我的问题


有同样的问题。我的名字有多个开发证书。这样就解决了。
赫克托·拉莫斯

2
是的,这解决了我们的问题。单击“目标”>“构建设置”>“代码签名”>“调试”>单击“下拉列表”以选择“ IPHONE DVELOPER”>,并且不选择“自动选择”,请尝试附加到其他团队的其他开发者ID * PP's
brian.clear 2012年

1
这应该是正确的答案......这是有道理的,因为该设备在实际供应配置文件不添加....
召“锡安”

如果您尝试使用未添加当前设备的代码签名配置文件运行,则会收到完全相同的错误(例如,从调试切换到发行版时可能会发生)
kritzikratzi 2013年

1
@ChrisConway是的,但是标记的答案并不能解释问题的原因……它只是在做一个整个过程,却不知道原因;)
Calleth'Zion'13

18

最后,我可以解决问题。我的一位同事撤销了他的测试应用程序在iOS Provisioning Portal上的开发人员证书。固定 我在钥匙串上删除了现有的开发人员证书,使用现有的私钥请求了新证书,从供应门户撤消了证书并提交了新请求的证书。然后我下载并安装了它。

现在我可以在设备上调试应用了:)


原因之一可能是您的“项目=>构建设置=>签名=>开发团队”与您的“目标=>构建设置=>签名=>开发团队”不同,只是使它们相同
暂停

16

这让我很惊讶,因为有人将“运行”配置的“构建配置”设置更改为“发布”(在“产品”>“编辑方案..”>“运行* .app”下)。

通常将其设置为“ Debug”,因此它没有使用我期望的开发人员证书和供应配置文件,而是使用了分发证书。

除此之外,我发现如果您查看设备的控制台日志(通过Organiser),则可能存在错误代码,可以更好地指示您的问题。例如我有...

Mon Sep  5 09:39:56 unknown installd[304] <Error>: profile not valid: 0xe8008012

然后,我用Google搜索“ 0xe8008012”,并得到以下页面,该页面指示“ 0xE8008012-设备的UUID与正在加载的配置文件中的任何UUID不匹配”错误。

移动安装


你今天救了一条命!谢谢。
Okhan Okbay,2017年

15
  • Xcode->Click your app -> TARGETS -> click the app-> Build Setting-> Code Signing:确保将DebugAny iOS SDK都设置为iPhone Development

  • Xcode -> Product -> Scheme -> Edit Scheme:确保将Build Configuration设置为Debug


这不是为了分发。
Curnelious

为了澄清我想补充一点,你应该设置构建配置调试Run(通常为TestAnalyze也)。Archive通常应为Release,否则您的发行版将变得混乱。
阿隆(Aron)

13

就我而言,发生此问题是因为为单元测试选择了另一个配置文件。我花了几个小时才找到这个...


@IeMale您保存了我的一天!
stavros.zavrakas

13

我在Xcode 10.0 beta 5(10L221o)和运行iOS 12.0(16A5345f)的设备上遇到了相同的问题-这也是beta。

安装标题为“应用程序安装失败”的应用程序警报后,出现“找不到此可执行文件的有效配置文件”。

我通过以下方法摆脱了它:~/Library/MobileDevice/Provisioning Profiles找到Xcode试图使用的证书。然后,在Xcode的“设备和模拟器”窗口中,我右键单击我的设备,选择“显示配置文件”,并使用加号按钮将配置文件添加到该设备中。

我不记得上一次做这件事已经有好几年了。我想Xcode通常会为我们执行此操作,但是由于某种原因,当我们看到该消息时它会失败。


我有同样的问题,这项工作对我来说。谢谢。
专利

10

使用Xcode 6和新设备:

  1. 按cmd + Shift + 2打开设备。 在xcode中添加设备
  2. 按下“注册设备”按钮。如果没有这样的按钮(如屏幕截图所示),请访问developer.apple.com并手动添加它。将标识符复制到字段中。 在门户网站上添加设备
  3. 转到Xcode->首选项->帐户->双击您的帐户->按左下角的小刷新按钮刷新配置文件 刷新配置文件
  4. 转到代码签名并设置新的配置文件。 设定个人资料

Provisioning Profile如果您知道自动配置文件或特定配置文件,请不要忘记将其设置为“自动”或“特定”配置文件,否则xCode将选择正确的配置文件。
Alex Cio 2015年

以我为例,我需要确认接受新的开发者许可的相同设备,然后删除配置文件并再次下载。
德米特里(Dmitry)


6

假设您已正确安装开发和发行证书:

在“项目”下,您的主要代码签名身份应为该应用的开发者资料。

在目标下,您的主要代码签名身份应为该应用程序的分发配置文件,除了您应将调试>任何iOS SDK更改为开发配置文件...,并确保发布>任何iOS SDK是您的分发配置文件。这应该在您配置的电话上构建并运行,并且应该在没有任何代码签名警告的情况下进行存档。

手机崩溃后,只有对我有用的东西,我不得不从以前的iTunes映像中还原它。


6

这个解决方案对我有用

  1. 转到Xcode->首选项->帐户。
  2. 在供应配置文件部分中,右键单击并使用finder打开。
  3. 从供应配置文件文件夹中删除所有供应配置文件。
  4. 最后,返回Xcode并单击刷新按钮。

希望对您有所帮助!


附加信息,即它唯一受影响的当前项目,您只需要删除相关的配置文件,该文件应该与您的项目名称具有相同的名称。
Bhimbim'17年

4

我有同样的问题。我所做的是:1.清理目标2.退出xcode 3.重新启动xcode 4.重建。
而且有效。


同样在这里。我只需要重新启动即可。
Roshambo 2015年

3

另一个原因(已验证):

  1. Apple在Xcode的一个主要错误可以追溯到3.x版本,在该错误中,它使用Xcode内部的伪造的钥匙串神奇地覆盖了OS X钥匙串,重新安装了已经删除的证书(和私钥!)。

  2. ...因此,如果您安装了“新证书”,而没有其他任何事情,则Xcode有时会陷入无限循环,在那里它还将继续安装“旧证书”(除了XCode之外,其他任何地方都没有!)。

  3. ...并且由于Xcode中的另一个错误(至今已修复3年以上...),Xcode 有时会自动选择“我可以找到的最旧的证书”(根据定义,这是不正确的-我认为苹果公司的人感到困惑在“最旧”和“最新”之间:()

  4. ...并且即使您选择了正确的配置文件,Xcode也会将“旧”配置文件发送到设备,然后使用“新”配置文件进行签名,从而导致此错误

解决方案:您必须取消钥匙串的FUBAR Xcode的FUBAR。

这比听起来要难(此主题上有多个SO帖子)-它涉及到计算机的多次重新引导,每次都删除密钥。

最终,Xcode放弃了破坏操作系统的工作,并接受了用:)呈现的现实。


OK -阅读论坛,苹果帮助和摆弄周围的无数个小时后,我不得不承认:Xcode是罪魁祸首
AlexVPerl

3

就我而言,有效的配置文件是因为我没有将设备添加到非常配置文件中。


3

将配置文件更改为自动,然后运行提示的Xcode以“修复”问题。然后,我又回到原来的配置文件,一切正常。


3

有同样的问题。我的解决方案非常简单。我检查了是否在developer.apple.com中拥有设备的UDID,但该设备不存在。添加后,它开始工作。Apple开发人员给出错误“找不到此可执行文件的有效配置文件”,而不是“找不到UDID”,这非常令人讨厌。实际上我在XCode 6中首先提到了它。


2

就我而言,这是我两个月前在iPhone上手动设置时间的问题。但是当我更改为自动设置时间时,它可以正常工作。

Setting-> General-> Date & Time->set time automatically

如果Mac和iPhone均无法自动设置时间,则可以正常工作。



1

以我的经验,如果您尝试在未在开发人员中心注册的设备上构建或在使用的配置文件中未启用该设备,则会发生此问题。

1)将设备添加到开发人员中心。在XCode 5中,您仍然可以在管理器窗口中找到一个“添加到会员中心”按钮。我建议在XCode 6中复制设备ID并将其手动添加到会员中心的设备部分。

2)编辑您正在使用的配置文件,以包括刚添加的设备。保存并同步XCode的配置文件。

干净,它已经打开。


1

原因之一可能是您的“项目=>构建设置=>签名=>开发团队”与您的“目标=>构建设置=>签名=>开发团队”不同,只是使它们相同


0

我有一个过期的证书(生成了错误)。
步骤1.转到developer.apple.com,登录,然后转到IOS设置门户

步骤2.转到证书(现在为空),并按照列出的说明创建新证书(在计算机上打开钥匙串,创建签名请求,将其保存到磁盘,然后将其上传到Apple)

步骤3.将Apple创建的文件下载并安装到钥匙串中

步骤4.问题:您以前的所有供应配置文件都与您的OLD证书相关联,因此您需要返回至developer.apple.com-> IOS provising portal->供应配置文件并“修改”您关心的每个配置文件。您将看到您的身份不再与个人资料相关联,因此只需单击复选框

步骤5.下载所有更改的配置文件

步骤6.插入手机,然后将.mobileprovision文件拖放到停靠栏中的xcode图标上,以将其安装在设备上


0

我看到了这个问题,因为我已经获得了一台新的Mac,并且仍在使用旧计算机的证书。我已经为新的Mac创建了新证书,但是钥匙串中同时包含两个证书。

在管理器中,配置文件警告说,即使我的钥匙串中存在旧证书,“ XCode在此钥匙串中也无法为此配置文件找到有效的私钥/证书对”。

解决方案是从我的钥匙串中删除旧证书,并删除/撤销所有使用该旧证书的配置文件。然后使用新证书创建一个新的配置文件并使用它。

希望这可以帮助!


0

将应用程序从Xcode 3升级到4.3,我发现必须将Bundle名称和Bundle标识符设置为与AppId匹配。如果所有其他方法都失败了,那就旋转一下。


0

我也遇到了同样的问题,可能还有其他一些原因:

While testing i set my date to some future date and profile got expired. As result this issue was generated.

But i solved by setting date of iphone to current date as a result profile was not expired. 

0

我正在用Adobe Air for iOS而不是Xcode编译我的应用程序。我试图使用iTunes复制.ipa,但收到一条神秘的“安装应用程序时出错”消息。直到我使用iPhone配置实用程序(iCU)才收到真正的错误消息。

问题是我在编译应用程序时使用了用于临时分发的配置文件和用于开发的证书。我不知道有2种类型的证书和2种类型的配置文件。有一个用于开发,一个用于分发。如果它们不匹配...则您将收到该错误消息。一旦了解就很明显...

解决方案是下载分发证书(.cer),双击以在“钥匙串”中打开,然后直接从KC导出为P12。然后,在发布设置(Flash IDE或Flash Builder)中使用该P12 分发证书,并使用用于临时分发的配置文件(.mobileprovision)。然后,最后使用iPhone配置实用程序安装配置文件和.ipa文件。

对我来说就做到了。


0

在我的情况下,我的配置文件无效,因为Apple更改了某些条款和条件。为了解决问题,我不得不

  1. 删除以前的个人资料。
  2. 我不得不接受条款和条件网站的苹果。

0

在“目标”下的“ Xcode”中单击您的应用。(在项目下。)在这里您可以看到摘要信息,构建设置,构建阶段,构建规则。

好的,转到“构建设置”。转到代码签名。

您会看到有两个字段“调试”和“发布”。在每个字段中都有两个配置文件可供选择,即“分发”和“开发”。

让发布成为“发布”字段中的一个。让“开发”成为“调试”字段中的一个。

这样做可以解决此问题,并让该错误消息消失。现在,我可以运行我的应用程序了。


0

我在Xcode 5.0.1中也遇到了这个问题。一天,该应用程序根本不想在五分钟前安装到其上的设备上安装,没有任何问题。

我尝试清除设置,删除派生数据,重新创建配置文件,使用其他证书/配置文件签名,从组织者中删除设备等。

最后,我重置设备的内容和设置,并使用旧的配置文件,证书和捆绑软件ID成功构建了我的项目。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.