尝试重建昨天才可以运行的应用程序。收到一条配置文件已过期的消息,因此我将其从 iPod 和 iTunes 中删除。当我选择一个新的配置文件(标识符中带有 * 的配置文件)时,我现在收到错误:

代码签名错误:找不到配置文件(长字符串)。

我缺少什么?我查看了相关问题,还没有看到这种情况。

有帮助吗?

解决方案

有时你的Xcode项目文件被搞砸了,特别是如果你有一个旧的项目,并首先使用旧版本的Xcode / iPhone SDK中的创建它。你需要做的就是打开一个文本编辑器的项目文件,搜索来自错误的“长串”,并手动清除该行。事实上,你应该先走一步,删除指向任何配置设定档的线。然后重新打开该项目在Xcode中,去设置并重新选择新的配置文件。这将清除得那样大部分时间的问题。指向供应轮廓的线将是这样的:

PROVISIONING_PROFILE = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";

其他提示

下面是一个是为我工作不要求项目文件的手工编辑简单的解决方案:

在Xcode中,在“组和文件”窗格中,展开“目标”,并在你的应用程序的目标双击。这带来了对目标信息窗格中。在“创建”的部分,检查“代码签名”部分的任何旧配置文件和与正确的替换。

请注意,这是你的项目的图标,并从那里更改配置文件从双击不同。相当惊人的:)

大利

  1. 项目&目标属性 -> “不要代码签名” -> 确定 -> cmd+S(或 cmd+B);
  2. 项目和目标属性 - >“您的配置文件” - >确定

  3. 一切又恢复正常了!

我同意布拉德的回答,您可以通过手动编辑目标/项目,删除任何行这样解决这个问题:

PROVISIONING_PROFILE = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";

然而,在Xcode 4.2和更高版本,有访问此文本,然后选择并删除它更简单的方法。在Project Navigator左侧,选择您的项目(Project Navigator的最上面的线)。现在,只需选择查看>文本编辑>显示文本编辑。这将显示您的项目文本,你可以在Xcode的编辑窗格中搜索配置和删除的麻烦线,就在那里。

刚看到在这个问题上的变化:我走进project.pbxproj文件按上述布拉德·史密斯的笔记,除了在这种情况下,所有的PROVISIONING_PROFILE行似乎是正确的,没有出现“坏”的个人资料串那的XCode找不到。

不过,修复是相同的:删除所有在project.pbxproj的PROVISIONING_PROFILE线,即使他们在理论上看起来“好”,然后重新打开在Xcode项目

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

  1. cd [Xcode project parent]
  2. vi [Xcode project name].xcodeproj/project.pbxproj
  3. /[offending provisioning profile] [Enter]
  4. dd - 删除整行
  5. 按 n 直到找不到更多
  6. Ctrl+x 保存并关闭
>管理器,选择我的设备和右边的“供应”面板下移除旧供应配置文件 -

在我的情况下,问题是由开口窗解决。老一已经标有红色的“X”符号,但iPhone仍然使用它。

除此之外轮廓,也是新酮显示出来(具有相同的名称),并简单地重新发起应用我有它平稳运行之后。

刚刚度过了一个小时左右,这样做的,与布拉德的建议的帮助和一些其他更改它的所有工作。

我已经使用以下做到了这一点:10.7.3,Xcode的4.3.2,iOS的5.1顺便说一句

1)鼠标右键点击你myapp.xcodeproj并选择软件包内容

2)打开project.pbxproj用文本编辑器(不建议文本编辑,因为它可能搞砸格式化)

3)滚动一路下来,直到你找到/* Begin XCBuildConfiguration section */

4)请注意,你有一个调试和发布部分

5)在所述释放部看一看CODE_SIGN_IDENTITY"CODE_SIGN_IDENTITY[sdk=iphoneos*]"它应该是这样的:

CODE_SIGN_IDENTITY = "iPhone Distribution: MyCompany LLC";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution: MyCompany LLC";

6)看看PROVISIONING_PROFILE"PROVISIONING_PROFILE[sdk=iphoneos*]"它们应该是这样的:

PROVISIONING_PROFILE = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";

这应该与Xcode中的供应曲线。要查看它们是否匹配开放的Xcode>窗口>管理>设备>部署配置文件>右键单击该配置文件>在Finder中显示>中的名为.mobileprovision文件名是您的个人资料的ID。

7)向下滚动project.pbxproj并找到释放部分的第二个实例。释放部分的第二个实例应与评论说/* End XCBuildConfiguration section */结束

8)确保所述第二部分中的第一部分,从而CODE_SIGN_IDENTITY, "CODE_SIGN_IDENTITY[sdk=iphoneos*]匹配,并且PROVISIONING_PROFILE都充满英寸

一个建议,因为还没有人已经表示,我会让:请请请让你的整个.xcodeproj文件的备份,然后开始修改其内容。搞砸了项目文件,并没有备份将导致一个非常非常不愉快的经历。

如果能够背出的编辑可以是一大福音。

我只是在我的XCode4遇到了这个问题。要解决这个问题, 你需要把所有正确的条款纳入Debug和Release配置。

我试图提交(通过存档),我的应用程序。所以,我只是改变了调试规定“不要代码签名”,并释放提供给我的应用程序的AppStore提供。

此解决它,使我正常存档。希望帮助。

选择在代码签名是任何的iOS SDK下空白线,并选择合适的证书。

布拉德·史密斯的解决方案为我,但我也不得不删除CODE_SIGN_IDENTITY领域,使其工作。

不幸的是这种方法并没有为我工作了。但这里是它为我工作的修复(得到这个工作,你需要在颠覆或工作项目文件的话):

我没有回滚到我的项目文件的工作版本。因为它是不可能的Xcode(凡回复?是在Xcode 4的源控制的“还原”选项) - 我用龟,我的Windows机器和本教程(的 http://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-howto-rollback.html )回滚到旧的项目文件。

由于教程并没有为我工作了,我只是用龟到我的项目文件的工作版本保存到USB记忆棒将其移植到我的Mac。从那以后,我替换旧的工作一个新的打破的项目文件,清理和它的工作就像一个魅力!

我遇到了问题,因为我使用一些在 TestFlight 上使用的新设备更新了我的 AdHoc 配置文件。假设发生这种情况是因为 xcode 在项目或目标的协同签名构建设置中对您的配置文件有旧的引用。我修复我的方法是:

  1. 转到目标构建设置和项目构建设置,在代码签名下将所有配置文件更改为其他内容。
  2. 转到管理器中的设备/配置文件,删除有问题的配置文件,然后单击右下角的刷新按钮。
  3. 返回到目标和项目构建设置,并将您的配置文件设置为适当的(希望)新刷新的配置文件。

至少在Xcode 5,这是一个解决了这个问题对我的事:

在预置简档中,选择有问题的预置简档,然后选择在下拉菜单中选择一个有效的provisioning profile。

“在这里输入的图像描述”

您可以删除供应文件的旧参考。然后后导入新的供应资料和选择的Xcode助洗剂。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top