试图重建一个昨天还在工作的应用程序。收到一条信息说一个档案过期了,所以我把它从iPod和iTunes中删除了。当我选择一个新的配置文件(一个在标识符*),我现在得到一个错误:
代码符号错误:无法找到配置文件(长字符串)。
我错过了什么?我浏览了相关问题,并没有看到这种情况。
试图重建一个昨天还在工作的应用程序。收到一条信息说一个档案过期了,所以我把它从iPod和iTunes中删除了。当我选择一个新的配置文件(一个在标识符*),我现在得到一个错误:
代码符号错误:无法找到配置文件(长字符串)。
我错过了什么?我浏览了相关问题,并没有看到这种情况。
当前回答
这里有一个更简单的解决方案,对我来说是有效的,它不需要手动编辑项目文件:
在Xcode中,在“Groups & Files”窗格中,展开“Targets”,双击应用的目标。这将打开目标的Info窗格。在“构建”部分中,检查“代码签名”部分中的任何旧配置文件,并将其替换为正确的配置文件。
注意,这不同于双击项目图标并从那里更改概要文件。非常神奇!)
Ori
其他回答
我刚刚在Xcode 4中遇到了这个问题。为了解决这个问题, 您需要将所有正确的规定都放入调试和发布配置中。
我试图提交(通过存档)我的应用程序。所以我只是将调试条款改为“不要代码签名”,并将发布条款改为我的应用程序的appstore条款。
这修复了它,使我能够正常归档。希望这能有所帮助。
有时候你的Xcode项目文件会弄乱,特别是如果你有一个旧项目,并且第一次创建它是用旧版本的Xcode/iPhone SDK。
你需要做的是在文本编辑器中打开项目文件,从错误中搜索“长字符串”,并手动擦除该行。
事实上,您应该直接删除指向任何配置概要文件的任何行。然后在Xcode中重新打开项目,进入设置并重新选择你的新配置文件。这在大多数情况下都能解决类似的问题。
指向配置文件的行如下所示:
PROVISIONING_PROFILE = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";
我遇到了一些问题,因为我用一些新设备更新了AdHoc配置文件,以便在TestFlight上使用。假设这是因为Xcode在项目或目标的协同设计构建设置中对你的配置配置文件有旧的引用。我解决问题的方法是:
转到目标构建设置和项目构建设置,在代码签名下将所有配置文件更改为其他内容。 转到管理器中的设备/配置配置文件删除违规配置文件,然后单击右下角的刷新按钮。 回到目标和项目构建设置,将配置配置文件设置为适当的(希望是)新刷新的配置配置文件。
这里有一个更简单的解决方案,对我来说是有效的,它不需要手动编辑项目文件:
在Xcode中,在“Groups & Files”窗格中,展开“Targets”,双击应用的目标。这将打开目标的Info窗格。在“构建”部分中,检查“代码签名”部分中的任何旧配置文件,并将其替换为正确的配置文件。
注意,这不同于双击项目图标并从那里更改概要文件。非常神奇!)
Ori
要完全在终端中实现Brad的解决方案,请使用以下命令
cd [Xcode项目父] vi [Xcode项目名称].xcodeproj/project.pbxproj . vi /[违规配置文件][输入] Dd -删除整行 按“n”,直到找不到为止 Ctrl+x保存并关闭