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

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

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

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


当前回答

另一个原因(已核实):

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放弃破坏你的操作系统,并接受你呈现给它的现实:)。

其他回答

解决方案之一可能是,您的配置配置文件不包括您的iPhone的UDID。为此,您需要先注册UDID,然后从开发人员帐户重新生成配置文件。

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

所以解决方案!!

目标>获取信息

选择配置到释放(这是魔鬼) 在代码签名中,代码签名身份检查iPhone开发者。关闭。

在目标上选择清洁目标,然后运行应用程序。

祝你好运。

删除证书、配置文件并重新创建。安装它。这是最好的方法。

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

点击Xcode Under Targets中的应用。(项目)。在这里您可以看到摘要信息、构建设置、构建阶段、构建规则。

好的,进入构建设置。转到代码签名。

您可以看到,您有两个字段Debug和Release。在这些领域中,你有两个概要可以选择,分发和开发。

让分配来自释放场。让Developing成为Debug字段中的一个。

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