从昨天开始,当我试图在我的设备上运行一个应用程序时,我一直得到以下错误:

未找到此可执行文件的有效配置文件。

这是在更新到Xcode 10之后。上周使用Xcode 9进行构建时没有出现问题。我已经检查了其他关于错误的讨论,但没有一个解决方案是有效的。

这个问题并不局限于我一直在做的一个项目,因为它影响了来自不同签约团队的几个人。

到目前为止,我尝试了以下方法:

Cleaning project Cleaning derived data Uninstalling Xcode, deleting any preferences and files related to it. Installing Xcode on a completely different Mac Testing with different devices Disabling device in developer profile and letting Xcode enable it again. Deleting all certificates in the developer portal and recreating them Unchecking and rechecking "Automatically manage signing" Trashing the provisioning profile and letting Xcode recreate it Creating a manual provisioning profile in the developer profile

该项目不包含测试,因此该目标上的签名设置错误不会出现问题。“日期/时间”设置为“自动”

值得注意的一点是,这里没有列出配置文件,除了我创建的手动配置文件:https://developer.apple.com/account/ios/profile/

我希望xcode生成一个显示,因为他们做的所有其他客户端。

下面是我目前正在使用的签名设置

我还没有尝试过将Xcode降级到旧版本,看看是否有效。除此之外,我不知道下一步该尝试什么。


我今天一直在努力解决这个问题,这非常令人沮丧。现在,只需进入“文件”>“项目设置…”(或者在某些情况下是“Workspace Settings…”),然后从“Build System”下拉菜单中选择“Legacy Build System”。


我也遇到过同样的问题,我的解决方案是登录到开发者帐户。更新到Xcode 10后,所有帐户都注销了。

使用菜单Xcode -> Preferences…->帐户”,并确保您使用的所有帐户都已登录,以便配置配置文件可以访问。


@Stephen认为这个问题已经解决了。我只需要-> File -> WorspaceSettings -> Build Settings(在这里更改为“Legacy Build System”)


使用清洁构建文件夹(命令+ shift + K)和重建应用程序可以很快解决这个问题。但是,构建时间将会增加,因为您已经清理了构建文件夹。


[编辑]注2020:我曾经手动签署这个项目。在自动签名的项目中,我从来没有遇到过这个问题。(/编辑)

我遇到了同样的问题,花了几个小时寻找答案,删除配置文件,清理项目等等。

你是否已经发行了你的应用?您需要切换回您的开发人员配置文件,但不是在项目设置下的General中,而是在Build设置中。

在签名下,查看您的代码签名标识。

确保你的调试和发布都设置在iOS开发者,而不是iOS发行版;或者你的iOS开发者配置文件,如果没有设置为自动值。

配置配置文件也是如此。它应该是您的开发概要文件,而不是您的发行概要文件。


以上的方法我都试过了。

然而,在我的案例中,经过几个小时的头痛之后,这是因为测试项目没有提供签名的有效帐户。在我选择了一个团队后,在测试项目中提供自动管理签名。这个问题解决了。


你换过显影设备吗?当我买了一部新的iPhone,并给它取了和我之前的设备一样的名字时,我就遇到了这种情况。然而,一个干净的构建解决了这个问题。


对我们的团队来说,什么都没用。我们花了几天时间,尝试了上面回答和评论中提到的每一步。我们尝试了XCode 10,甚至XCode 9.2在应用程序上,这是在应用程序商店多年前。

该问题始于升级到MacOS Mojave后。不幸的是,回到HighSierra并没有什么帮助。

至少在我们创建了新的证书和配置文件后,我们能够再次将其发布到App store中。但我们仍然无法在真实设备上以发布模式测试我们的应用,这是测试inapp购买的必要条件。

简而言之:存档和提交工作得很好,在真正的设备上运行不行!

几个开发者,几个设备,macbook, XCode版本....

最后,为了能够再次在真实设备上进行测试,我们不得不改变AppID。

因此,我们现在运行两个不同的项目:一个是使用真正的AppID发布到TestFlight/AppStore,另一个是使用另一个AppID进行开发。

虽然这种情况只会发生在我们公司的一个特定应用上,而不是所有其他应用上,但我们预计未来会遇到类似的问题,因为苹果的开发工具会让情况变得更糟……


就我而言,在没有其他方法帮助的情况下,我做了以下事情:

修改AppID为新的 XCode自动生成新的配置文件 在真实设备上运行应用程序->现在它已经工作了 将AppID更改回原来的id 作品

在此之前,我已经尝试了这里提到的每一步。但只有这样才有用。


对我来说,Xcode的分发证书和配置文件是可用的,在分发过程中选择自动管理签名会导致失败。我做了以下事情。 如前所述,我创建了一个新的分发证书和配置文件,然后在分发过程中手动选择证书和配置文件以及Voilaaaa。 同时确保我使用的是最新的10.1版本。


苹果似乎在Xcode 10.2 beta 2版本中修复了这个错误。

https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_beta_2_release_notes

Signing and Distribution Resolved Issues When you’re building an archive of a macOS app and using a Developer ID signing certificate, Xcode includes a secure timestamp in the archive’s signature. As a result, you can now submit an archived app to Apple’s notary service with xcrun altool without first needing to re-sign it with a timestamp. (44952627) When you’re building an archive of a macOS app, Xcode no longer injects the com.apple.security.get-task-allow entitlement into the app’s signature. As a result, you can now submit an archived app to Apple’s notary service using xcrun altool without first needing to strip this entitlement. (44952574) Fixed an issue that caused the distribution workflow to report inaccurate or missing information about the signing certificate, provisioning profile, and entitlements used when exporting or uploading an app. (45761196) Fixed an issue where thinned .ipa files weren’t being signed when exported from the Organizer. (45761101)

Xcode 10.2 beta 2 Release可以在这里下载: https://developer.apple.com/download/


你只需要改变你的团队。对我来说,这很有效


在我厌倦了大部分的解决方案后,我发现它让它工作对我来说没有任何问题,它通过去developer.apple.com然后帐户,然后证书,标识符和配置文件解决,我点击设备下的所有链接,然后添加一个新设备。

然后您需要设置设备名称,和uuid,并保存后。 去xcode,清理缓存,构建,一切正常。

注1:确保你的团队是集真。

注2:你可以通过连接你的mac设备来获取uuid,点击iTunes,按安全标签,你会看到uuid。

这个答案也很有帮助。


我试了上面所有的答案,但运气都不好。之后我重启iPhone,问题似乎消失了。我知道这很蠢,但很有效。以上答案很可能会解决问题,但如果不能,请尝试重新启动您的iOS设备。


所以这并不适用于每个人,但我想我无论如何都要把它贴在这里,因为似乎没有任何与之相关的答案。

In my case I was working on an app that was being developed in ReactNative, my issue was that although my signing was correct on the main app target the test target did not have any signing applied to it. For some reason React Native requires that both your app target and your test target are signed in order to install the app on a device. It does specify this in the official documentation on building for device however its the only instance I have ever seen where the test target is built alongside the app for anything other than testing.

为了签署您的测试目标,通过打开项目导航器(⌘1)进入您的项目设置,并在顶部选择您的项目。

在主编辑器中,在Targets下面选择你的主应用目标(应该与你的项目名称相同),并确保签名是正确的,然后选择测试目标(可能就在你的主应用目标下面,它应该是相同的名称,并附加了Tests),并确保它以相同的方式签名。

重新构建应用程序,现在应该可以成功安装了。

这要归功于Leo Lei,他的回答让我很头疼:https://stackoverflow.com/a/48657358/732844

顺便说一句,如果有人知道为什么react native要求你的测试目标与你的应用目标一起构建,他们能告诉我吗?我能想到的唯一原因是简化界面,这样react就可以构建一个应用程序,不需要重新构建就可以运行和测试,但我只是猜测。


确保你:

1)为您的设备注册配置文件。

2)设备必须添加到开发配置文件中并更新。

如果仍然遇到问题,请检查目标的构建设置。

确保你:

1) User-Defined中的CODE_SIGNING_REQUIRED设置为YES。

2)检查签名选项是否正确。如果问题仍然存在,请切换到手动设置,而不是自动设置。


遇到同样的问题,我们在Xcode项目中有多个配置,让我们说调试-分期,调试-生产。然后我们统一这些配置,只使用一个配置Debug。但是旧的(不再存在)被卡在scheme for run阶段,所以一旦你试图运行,Xcode就会显示这条消息。这是有意义的,因为配置配置文件是在基于配置的构建设置中设置的。

运行方案是这样的:

而项目配置是这样设置的。

改变方案以使用项目中仍然可用的配置是为我解决这个问题的原因。


我已经按照以上所有步骤,但它不是工作形式的我最后。我被创建了复制目标,它工作正常。我不知道哪里出了问题,可能是缓存问题


以我为例,以下是我解决问题的步骤:

进入这个文件夹:~/Library/MobileDevice/Provisioning Profiles/ 删除所有配置文件 在Xcode 10菜单>产品>清洁构建文件夹 在Xcode 10菜单> Xcode >首选项>帐户>下载手动配置文件 在Xcode 10菜单> Product > Build / Archive

采取上述步骤的原因是为了删除打乱构建过程的旧配置配置文件。


我有这个问题发生在Xcode 10.3后,我切换到我的XCTest单元测试目标,然后回到项目运行时目标。

结果发现,我在配置配置文件中为每个目标选择了不同的Teams。

解决方法:

清洁构建文件夹 确保所有目标都使用同一个团队。参见“常规”选项卡下的“配置文件签名”。 如果没有对所有目标使用相同的团队,请在切换到构建目标之前进行清理 不同的团队选择。


确保供应概要文件来自target和targetTests中的同一个团队。


在我的例子中,设备日期-时间被设置为未来的日期。 将日期设置更改为“自动”修复了这个问题。


这需要很长时间,我们做了上面所有的解决方案,但它们根本不起作用,所以我们的团队决定删除Pod文件,重新运行Pod安装。最后我们的OTA上传了安装在用户设备上的ipa。 最好的解决方案

清洁项目菜单>产品>清洁构建文件夹和/Users/{你的用户名}/Library/Developer/Xcode/DerivedData 转到你的项目目录并删除Podfile。锁,Pods文件夹,pod_***.framework 再次运行pod install


我有同样的问题(XCode 11),没有什么工作,写在这里。

我的问题是我的手机上有iOS测试版(13.3)。恢复后,一切工作正常。


的想法: 也许设备也缓存了一些关于配置文件的信息,所以手机的出厂重置可能也会修复它?


我的应用可以部署到我的iPhone上,但不能部署到我的手表上。部署到手表将给出“未找到此可执行文件的有效配置文件”错误。这是XCode版本11.2.1,使用免费的开发人员帐户。

以下是我把它部署到我的手表上的方法:

1)我删除了XCode中的配置文件。我通过到窗口->设备和模拟器来做到这一点。然后右键点击iPhone名称,选择“Show Provisioning Profiles”。从那里我可以删除文件

2)在“设备和模拟器”界面,我还从“已安装的应用程序”部分删除了我的应用程序。

3)创建一个“清洁构建文件夹”(Product ->清洁构建文件夹)

4)在“构建设置”->“签名部分”,我确保每个目标(iPhone,测试和手表)都有相同的设置(开发团队,代码签名风格,配置配置文件设置为自动等)。

5)确保~/Library/MobileDevice/Provisioning Profiles目录为空。

6)拔掉电脑上的手机插头

7)重启电脑、手机和手表

8)将手机插回电脑,通过手机和手表上的“信任这台机器”提示。

9)运行应用程序。


对我来说,删除一个Capability,然后再将其添加回来是有效的。


我做了以下事情:

断开未安装应用程序的设备 连接了一个不同的设备<它安装在这个第二个设备上 一段时间后,连接第一个设备,它工作!

这很奇怪,但它对我有用,可能对其他人也有用,避免了挫折。


今天我在设备上安装应用程序时也犯了同样的错误。 问题发生在我更新到新的xCode 11.4之后。

我是如何解决这个问题的:

未配对设备(Xcode >窗口>设备和模拟器>左键单击设备取消配对设备。 重新启动手机 清洁构建文件夹(Xcode >产品>清洁构建文件夹) 清洁派生数据(在../library/Developer/Xcode/DerivedData中) 再次清理构建文件夹(Xcode > Product > Clean Build Folder) 在设备上构建应用程序。


最后,我明白了是怎么回事……差不多花了我2个小时

我的问题是,我手机的日期不对。我忘了我改了手机的日期。我想这会使我所有的配置文件都过期了……

如果你已经尝试了所有的答案,但都没用。进入设置,检查你手机的日期。


请注意,已接受的答案会阻止构建上传到App Store Connect。


打开你的Mac上的钥匙链访问,删除旧的过期的苹果开发证书。这为我解决了问题。


检查你是否使用Ad Hoc分发配置文件,而不是App Store分发配置文件,我得到这个错误,因为这。


我只是从苹果开发者禁用我的设备,然后问题解决了。(在Xcode 12.4上测试了很多次)


我试过所有其他的答案,但(令人惊讶的是)没有一个对我有效。最后,我认为我的开发帐户必须被设备“信任”才能运行。

这可以在你的iOS设备中配置,在设置>通用>设备管理>开发者应用程序。你应该确保你的帐户被标记为受信任。


您需要手动在设备上安装开发发放配置文件。

在Xcode中:

转到窗口>设备和模拟器:出现一个新窗口。 在左侧窗格中找到连接的设备。右键单击它并选择Show Provisioning Profiles…:出现一个新窗口。 手动添加您的开发配置文件。

在设备上重新构建应用程序。


我使用Xcode 13.3 swift 5,在我的情况下,只有设备/iPhone上的分析抛出这个错误,我做了以下工作:

1-去项目编辑方案

2-然后去配置文件选项卡信息选项卡,然后选择构建配置调试

3-运行剖析命令⌘+i


好吧,似乎所有的答案中都没有提到我的案例。

我的应用程序是基于React Native。在这种情况下,确保勾选项目设置中的“常规”->“框架,库和嵌入式内容”。如果有嵌入式框架,“Embed”一栏应该是“Embed & Sign”。


首先我要说的是,苹果,你把这个过程搞得令人难以置信地不直观和混乱。

上面提到的这些方法对我来说都没用,真正管用的是:

在团队标签:,选择一次个人,部署到iPhone 切换回公司证书。