试图重建一个昨天还在工作的应用程序。收到一条信息说一个档案过期了,所以我把它从iPod和iTunes中删除了。当我选择一个新的配置文件(一个在标识符*),我现在得到一个错误:

代码符号错误:无法找到配置文件(长字符串)。

我错过了什么?我浏览了相关问题,并没有看到这种情况。


当前回答

在我的案例中,这个问题通过打开Window -> Organizer来解决,选择我的设备并在右侧的“供应”面板下删除旧的供应配置文件。旧的手机已经打上了一个红色的“x”符号,但iPhone仍在使用它。

除了这个配置文件之外,新的配置文件也出现了(使用相同的名称),在简单地重新启动应用程序后,它运行得很顺利。

其他回答

这里有一个更简单的解决方案,对我来说是有效的,它不需要手动编辑项目文件:

在Xcode中,在“Groups & Files”窗格中,展开“Targets”,双击应用的目标。这将打开目标的Info窗格。在“构建”部分中,检查“代码签名”部分中的任何旧配置文件,并将其替换为正确的配置文件。

注意,这不同于双击项目图标并从那里更改概要文件。非常神奇!)

Ori

要完全在终端中实现Brad的解决方案,请使用以下命令

cd [Xcode项目父] vi [Xcode项目名称].xcodeproj/project.pbxproj . vi /[违规配置文件][输入] Dd -删除整行 按“n”,直到找不到为止 Ctrl+x保存并关闭

只是看到了这个问题的一个变体:我进入了这个项目。根据Brad Smith上面的注释,pbxproj文件,除了在这种情况下,所有的PROVISIONING_PROFILE行似乎是正确的,没有出现Xcode找不到的“坏”配置文件字符串。

但是,修复方法是相同的:删除项目中的所有PROVISIONING_PROFILE行。pbxproj,尽管理论上看起来“不错”,然后在Xcode中重新打开项目。

Brad Smith的解决方案适合我,但我还必须删除CODE_SIGN_IDENTITY字段才能使其工作。

至少在Xcode 5中,这是为我解决问题的方法:

在配置配置文件下,选择有问题的配置配置文件,然后在下拉菜单中选择有效的配置配置文件。