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

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

这是在更新到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降级到旧版本,看看是否有效。除此之外,我不知道下一步该尝试什么。


当前回答

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

在Xcode中:

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

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

其他回答

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

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

解决方法:

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

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

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就可以构建一个应用程序,不需要重新构建就可以运行和测试,但我只是猜测。

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

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

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

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

在Xcode中:

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

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