我得到这个错误,而我试图调试我的应用程序上的设备。

我创建了开发配置文件,正如开发人员门户中提到的那样。在概要文件中选择了我的开发设备,我正在从Target的代码签名标识菜单中选择正确的概要文件。我重新创建配置文件几次,也删除和重新安装它,并重新创建项目,但每当我尝试在设备上调试时,我都会得到它。

顺便说一句,临时分发条款概要文件可以工作。

我花了一整天的时间想找出解决办法,但一无所获。有人有办法吗?


当前回答

我有一个过期的证书(这会产生错误)。 步骤1。登陆developer.apple。com,进入IOS配置门户

步骤2。转到certificates(现在是空的),并按照所列的说明创建一个新证书(在计算机上打开keychain,创建签名请求,保存到磁盘,上传到apple)

步骤3。下载并安装苹果创建的文件到你的钥匙链

步骤4。问题:你之前所有的配置配置文件都与旧证书相关联,所以你需要回到developer.apple.com->IOS提供门户->配置配置文件并“修改”你所关心的每个配置文件。您将看到您的身份不再与配置文件关联,因此只需单击复选框

第5步。下载您更改的所有配置文件

步骤6。插件你的手机,拖拽。mobileprovision文件到dock栏的xcode图标上,将它们安装到设备上

其他回答

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

这看起来像一个bug(我使用XCode 7.3.1)。

尝试使用XCode->Product->配置文件吐出“无效供应配置文件”错误。

完全是运气使坏,我只需要在附带的设备上使用普通编译运行应用程序,然后转到“调试导航器”,点击右上角的“工具配置文件”,它就可以工作了。

在我的例子中,我在“项目->通用->框架,库和嵌入式内容”选项卡中的一些框架上设置了“不签名嵌入”,这导致了项目中未知的冲突。

当我将“Embed and Sign”设置为需要嵌入的框架时,它终于工作了。

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

另一个原因(已核实):

Apple has a major bug in Xcode going back to version 3.x, where it magically overwrites the OS X keychain with a fake keychain from inside Xcode, re-installing certs (and private keys!) that you already deleted ...so, if you have "new cert" installed, and nothing else, Xcode will sometimes get into an infinite loop where it will keep ALSO installing "old cert" (that doesn't exist anywhere except inside XCode!). ...and because of ANOTHER bug in Xcode (unfixed for 3+ years now...), Xcode sometimes automatically selects the "oldest cert I can find" (whcih, by definition, is incorrect - I think someone at Apple got mixed up between "oldest" and "newest" :( ) ...and EVEN THOUGH you've selected the correct provisioning profile, Xcode sends the "old" provisioning profile to the device, then signs with the "new" profile, causing this error

解决方案:你必须unfubar Xcode的FUBAR你的钥匙链。

这比听起来要难(关于这个话题有很多SO帖子)-它涉及到多次重启你的机器,每次都删除密钥。

最终,Xcode放弃破坏你的操作系统,并接受你呈现给它的现实:)。