我使用Xcode 4在iPhone上运行我的应用的发布模式。

一切都很顺利,直到我切换到模拟器,又切换回iPhone。切换回来后,应用会在iPhone上启动,但主屏幕会立即显示,在Xcode中我得到:

failed to get the task for process 

我试着删除/添加授权文件,删除应用程序和重新启动Xcode,但什么也没做。


当前回答

我敢打赌你的发行模式包括使用发行证书进行编译,这将禁止这种行为(你肯定不希望在从应用商店下载应用后出现一些随机的傻瓜)。使用开发证书进行编译。您可以在代码签名下的建筑设置中更改此设置。

其他回答

对于任何遇到这个问题的人: 读完这篇文章后,我试图通过将调试签名设置为开发证书来解决这个问题,但发现部署仍然失败。

结果发现我的目标是发布,因此仍然使用分发证书签名——要么回到调试目标,要么暂时将发布签名更改为开发。

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

在我的例子中,Game Center和In- app purchase的链接失效了,需要修复(通过点击“修复我”按钮)来解决这个问题。

我也遇到过同样的问题,不过情况有点不同。有一天,我的应用程序正常启动(使用开发人员提供的条款),然后我对我的授权文件做了一些小的编辑,之后它就停止工作了。应用程序在我的设备上安装得很好,但是每次我试图启动它时,它都会立即退出(在开始动画之后)。(因为我也对其他文件进行了编辑,我没有怀疑下面的问题)

问题是在授权文件格式,似乎下面的声明是不一样的:

正确的:

<key>get-task-allow</key>
<true/>

不正确的:

<key>get-task-allow</key>
<true />

虽然它是XML格式,但不要在标签中使用空格,否则Xcode将无法连接到进程。

我一直在使用开发人员配置文件。

编辑:同时确保授权文件中的结束行是\n (LF)而不是\r\n (CRLF)。如果在Windows上使用CRLF行结束符编辑授权文件,可能会导致应用程序无法启动。

更改代码签名的概要文件。选择您的项目,转到生成设置>代码签名标识。切换到其他开发人员配置文件。

当我试图在我以前没有用过的设备上调试一个应用程序时,我遇到了这个问题。正确设置了开发人员配置文件。这个设备是我们团队账户的一部分,但不包括在我的个人资料中。

只需打开管理器->选择设备->添加到成员中心