Xcode:无法获取进程任务

284

我在Xcode 4上以发布模式在iPhone上运行了我的应用程序。

一切都很好,直到我切换到模拟器,然后再切换回iPhone。切换回来后,在iPhone上启动了应用程序,但立即显示了主屏幕,并且在Xcode中出现以下信息:

failed to get the task for process 

我尝试过删除/添加权限文件,删除应用程序并重新启动Xcode,但是没有作用。


你尝试过更改Bundle ID吗? - rakeshNS
15个回答

728

我打赌你的发布模式包括使用分发证书编译,这会禁止此行为(毕竟你不想让一些随意的人在从应用商店下载你的应用后挂钩进入它)。相反,使用开发证书进行编译。你可以在构建设置中的代码签名下更改此设置。


3
请确保选择正确的目标,并且您不要为测试或其他目标调整代码签名设置。 - Vincil Bishop
25
让人有点想知道为什么苹果不会给我们一个更有用的错误提示,比如"请使用调试配置文件"。 - inorganik
15
我在开发苹果平台上的经历非常痛苦。我不知道他们怎么会这么不尊重自己。 - noncom
2
是的,我犯了同样的错误:Xcode愉快地构建了,并让我尝试运行一个应用程序,在那里我选择了一个分发(而不是开发)证书的临时配置文件。但是,说真的,为什么......为什么Xcode不能给出一个半有用的错误消息,以警示您这个问题?现在已经是2016年了。Xcode会成长起来,看起来像一个半体面的环境吗?! - Mike Gledhill
7
@MikeGledhill,现在是2020年12月,情况仍然没有改变。xCode没有更新。 - Renascent
显示剩余9条评论

26

更改代码签名的配置。选择您的项目,转到“Build Settings > Code Signing Identity”选项卡。切换至其他开发者的配置文件。


有两个构建设置,一个在项目下,另一个在目标下。我必须更改它们的代码签名才能使它们正常工作。 - Stephen Horvath

12

1
第三步对我来说很神奇。 - Lebecca

7

如果有人遇到这个问题,但确定他们的证书和代码签名设置正确,请在单击项目时检查功能选项卡(即在构建设置选项卡、构建阶段选项卡等旁边)。

在我的情况下,需要修复游戏中心和应用内购买的损坏链接(通过单击“修复”按钮)才能解决此问题。


5
如果您在“构建设置-代码签名”下设置了正确的代码签名证书,则确保您还使用了正确的调试/发布模式的预配文件。
我之前遇到了这个问题,因为我在调试/发布模式下都使用了Ad-Hoc预配文件,这不允许在进行调试构建时使用开发预配文件。

5
我遇到了相同的问题,从上面的答案中读取后,我只需要进入“构建设置 > 代码签名 > 配置文件 > 无”,就能再次在我的设备上运行该应用程序。希望这能帮助其他人。

上述更改对我也没有起作用,但是您的建议确实有效。 - Praxiteles
我一直没有什么好运气。最后发现是我为项目设置了预配资料。我需要为我正在构建的目标进行设置。终于解决了 - Suz

4

我在构建设置的"Debug"中切换回“自动”选项,并保持发布证书配置不变,这样我的问题得到了解决。尝试了其他答案,但都没有效果。我不想重新配置我的证书,因此在配置文件中选择“自动”选项解决了问题。

screenshot


4
对于任何看到这篇文章的人: 读完后,我试图通过将调试签名设置为我的开发证书来解决问题,但是我发现部署仍然失败了。
事实证明,我的目标是发布版本,因此仍在使用发布证书进行签名-您可以返回到调试目标或暂时更改发布签名为开发签名。

2

在我的iPhone 5S上安装分发配置文件的应用程序时,遇到了同样的问题。

-> 我的解决方案是激活分发配置文件中设置的功能(在我的情况下是“密钥串共享”、“应用内购买”和“游戏中心”)

希望这能对某些人有所帮助...


1

我也曾经遇到过同样的问题 - 应用程序安装正常,但无法从Xcode运行,提示"process launch failed: failed to get the task for process"。

后来发现我的开发证书在晚上过期了。重新生成证书和配置文件解决了这个问题。


同样的问题。如果组织者中的开发配置文件状态显示“未找到有效的签名标识”,则可以判断开发证书存在问题。 - Vladimir Grigorov

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接