31

在升级到 iPhone OS 3.1 和 Xcode 3.2 之前,我有一个完整的构建环境。现在,当我尝试进行构建时,我得到以下信息:

代码签名错误:配置文件“FooApp test”指定了与当前设置“TGECMYZ3VK.no.fooapp.iphoneapp”不匹配的应用程序标识符“no.fooapp.iphoneapp”

问题是 Xcode 以某种方式设法认为“FooApp Test”配置文件指定了应用程序标识符“no.fooapp.iphoneapp”,但事实并非如此。

在 Organizer(和 iPhone 开发者门户网站)中,应用标识符被正确地视为“TGECMYZ3VK.no.fooapp.iphoneapp”。

此外,在项目级别的构建选项中设置配置文件时,Xcode 正确识别应用程序标识符,但是当我转到目标时,我无法选择任何有效的配置文件。

什么可能导致这个问题?

更新:我试图创建一个新的配置文件,但仍然没有运气。我还尝试简单地将 Info.plist 中标识的应用程序更改为“no.fooapp.iphoneapp”。构建成功,但现在我从组织者那里得到一个错误:

可执行文件已使用无效权利进行签名。您的应用程序的代码签名权利文件中指定的权利与您的配置文件中指定的权利不匹配。(0xE8008016)。

这似乎是合理的,因为配置文件仍然具有“TGECMYZ3VK.no.fooapp.iphoneapp”应用程序标识符。

我还仔细检查了钥匙串中的所有证书是否有效。

所以我的问题是如何让 Xcode 看到正确的应用程序标识符?

更新:如下所述,似乎解决问题的方法是删除所有配置文件、证书等,制作新的证书/配置文件并再次安装它们。如果有人有任何其他解决方案,他们将受到欢迎。:)

4

16 回答 16

21

我必须从手机中手动删除配置文件,然后在构建菜单中执行“清除所有目标”后重建应用程序。

那在设置 -> 常规 -> 配置文件下

当我有一台新的 Mac 时,这发生在我身上。你会解决的,别担心

于 2009-10-09T04:39:02.250 回答
16

好吧,似乎很多代码签名问题就是这种情况,删除所有配置文件、证书等,然后重新撤销和生成所有内容,结果证明可以解决问题。我什至创建了一个新的包标识符、应用程序标识符等,现在 AdHoc 分发又开始工作了。

于 2009-09-17T13:41:10.980 回答
5

我昨天有同样的错误。我在其他答案中尝试了所有各种重置程序,但没有成功。最后我也

  • 重新启动了我的 Mac
  • 重新启动了我的 iPhone
  • 使用 XCode 从手机中删除了我所有的 iphone 配置文件
  • 从我的 mac 中删除了所有配置文件(~/Library/MobileDevice/Provisioning Profiles for me)
  • 还有什么?删除 build 文件夹,重新启动 XCode,安装更新到 3.1.2 sdk,牺牲了一只鸡。

瞧,它现在可以工作了,错误消失了。这是严重的巫毒教领域。

于 2009-10-16T00:52:38.047 回答
5

此外,请确保您在项目配置 CODE_SIGN_ENTITLEMENTS 中添加了对权利文件名“dist.plist”的引用。

于 2010-02-16T06:16:13.737 回答
5

检查构建目标和主应用程序的信息中的代码签名权利 - 如果代码签名权利在其中任何一个上显示,则将其删除

于 2010-11-12T16:23:42.003 回答
4

在 XCode 中,在“组和文件”窗格中,展开“目标”并双击应用程序的目标。

这将为您的目标打开信息窗格。在“构建”部分,检查任何旧配置文件的“代码签名”部分。这在我身上发生过很多次,尤其是在升级到新版本的 sdk 和 iphone 操作系统之后

于 2009-09-11T10:55:19.473 回答
2

如果您使用的是 Xcode 4.3,请快速破解。

在 Xcode 中Project Settings > MyTarget > Summary 选项卡的底部一直有一个复选框,上面写着“启用权利”。当我取消选中它时,它使错误消失了。

于 2012-03-06T11:49:19.930 回答
1

在被这件事难住了很长一段时间后,我重新访问了设置,发现我已经颠倒了“代码签名身份”和“任何 iPhone OS 设备”条目。- 显示了我对这件事的线索。

  1. 从电话中删除所有个人资料
  2. 构建并运行

此时 xcode 尝试配置电话(设备)

  1. 检查电话以查看已添加的配置文件。

当我为所有配置文件添加前缀“AdHoc”或“Development”或“AppStore”时,我立即看到安装过程是在设备上放置开发配置文件,而不是 AdHoc 配置文件。

于 2010-01-12T16:12:12.940 回答
1

在 Resources/Entitlements.plist 中有一个布尔值“get-task-allow”,如果未选中,请将其选中。这为我解决了这个问题。

于 2011-08-04T11:59:33.360 回答
1

该设备可能不在列表中。尝试修改您的配置文件。

于 2012-01-13T00:49:49.693 回答
0

只是在这里添加一个注释:我在更换我的 Macbook 的逻辑板后遇到了同样的错误(0xE8008016)(虽然我想你在一个全新的 Mac 上会遇到同样的问题),经过几个小时的转圈我意识到iPhone Developer Program Portal 有单独的DevelopmentDistribution证书。

硬件更改意味着您需要重新颁发这两个证书 - 我重新颁发了 Developer 但不是Distribution。因为当我的硬件改变时我的名字没有改变(并且证书由所有者的名字标识),这使得发现它成为一个棘手的问题;)希望这可以避免其他人我的挫败感。

于 2010-03-02T14:29:45.810 回答
0

另一个原因是如果您要安装的设备不是分发证书中批准的设备。

于 2010-08-25T18:12:49.407 回答
0

作为参考,我遇到了同样的问题,从我的本地驱动器和开发人员门户中删除了我的所有配置文件、现有证书和所有内容,并删除了我现有的设备并重新添加它们(开发人员门户)似乎可以解决问题。

于 2010-09-03T01:20:55.027 回答
0

问题出在 [您的项目].xcodeproject 文件中的“project.pbxproj”文件中。如果您觉得勇敢,请右键单击 .xcodeproject 并查看内容,然后使用计划文本编辑器打开“project.pbxproj”。内部搜索进攻路径并纠正它。就我而言,我刚刚删除了整个路径并离开了“Entitlements.plist”,它清除了我的问题。我强烈建议在尝试此操作之前备份您的 .xcodeproject。

于 2010-09-10T00:40:17.193 回答
0

双击目标,然后选择“属性”选项卡。那里改变com.yourcompany.${...}.

于 2011-07-22T11:13:13.030 回答
0

有时 Xcode 不会自动将您的配置文件复制到正确的位置。就我而言,这是真的。

检查您的配置文件是否在~/Library/MobileDevice/Provisioning Profiles目录中,如果不只是拖放,清理和构建

于 2011-09-27T13:43:03.727 回答