iPhone调试:如何解决'未能获得进程的任务'?

时间:2009-09-28 18:29:28

标签: xcode provisioning adhoc

我刚刚为XCode添加了配置文件(需要支持通知和应用程序购买),根据需要设置临时分发的构建配置,并尝试在设备上运行应用程序(我已经多次这样做了)在过去,没有任何问题)。

该应用已安装,但无法启动。在控制台上,我看到以下消息:

Error launching remote program: failed to get the task for process 82.
Error launching remote program: failed to get the task for process 82.
The program being debugged is not being run.
The program being debugged is not being run.

但是,如果我手动启动设备上的应用程序,它会按预期工作。我最近为Snow Leopard安装了最新的XCode 3.2。这是这个版本的XCode的已知错误还是我做错了什么?

编辑:使用开发配置文件进行发布分发时,它可以正常工作。 我再次检查了临时配置文件,以确保它包含我正在使用的设备。

15 个答案:

答案 0 :(得分:289)

ad-hoc配置文件不支持调试。您需要使用开发配置文件进行调试,并仅使用Ad-Hoc配置文件来分发不可调试的副本。

答案 1 :(得分:110)

当应用程序包含Entitlements.plist文件时,我在通过XCode调试设备上的二进制文件时遇到问题,无需安装到设备上进行调试。一般情况下,我已将此文件包含在发布版本中(App Store需要它)并将其删除以进行调试(因此我可以从XCode调试应用程序)。这可能是你的问题。

更新:自(至少)2010年8月(iPhone 4.1 SDK)起,Entitlements.plist不再需要在许多情况下包含在您的应用程序中(例如,通过App Store分发)。 )有关需要Entitlements.plist的案例的更多信息,请参阅here

  

重要提示:通常只有在构建Ad Hoc Distribution或启用Keychain数据共享时才需要Entitlements文件。如果这两个都不成立,删除代码签名权利中的条目。 (强调我的)

答案 2 :(得分:37)

我遇到了同样的问题,但是按照以下简单步骤解决了这个问题:

  1. 确保选择了调试而不是发布。
  2. 在调试配置中,在项目设置中,您应该选择开发人员的个人资料&无需指定权利plist。
  3. 同样的设置如下:目标:如果不是manuall将它们更改为上面的调试配置。它会起作用。
  4. 一切顺利。

答案 3 :(得分:19)

我花了一段时间才弄明白。

如果您使用的是分发/ ad hoc /配置文件,则无法通过xcode进行测试。您将收到错误:正在调试的程序未运行。

您可以构建应用程序,在xcode中转到应用程序中的products文件夹,单击包含项目名称的文件,然后在finder中选择显示。您可以将此应用程序拖入iTunes并同步,然后您可以在设备上测试您的应用程序。

答案 4 :(得分:13)

如果您遇到此类错误,唯一的原因可能是您使用的是分发配置文件,而不是Xcode中的开发配置文件或缺少的Entitlement属性。如果您没有使用Entitlements.plist,那么唯一可能的错误可能是应用程序正在打包分发配置文件。您可以验证这确认构建日志。要更改此设置,请转到项目的“构建设置”并验证“代码签名实体”设置。要使调试正常工作,此设置应该是您当前使用的配置的开发人员配置文件。

https://developer.apple.com/library/ios/#qa/qa1682/_index.html

要获得即时结果,请从xcode中删除所有移动配置文件,然后安装您打算使用的开发人员配置文件。

答案 5 :(得分:13)

这个问题差不多2小时!最后我通过替换

解决了这个问题
  

iPhone开发人员

  

iPhone开发人员:我的开发帐户名称

用于Debug的CODE_SIGN_IDENTITY

  1. 选择项目目标
  2. 构建设置
  3. “代码签名”搜索
  4. 使用 “iPhone开发人员:我的开发人员帐户名称” 修改 CODE_SIGN_IDENTITY 部分的调试行,而不只是“iPhone Developer”< / em>的
  5. 我不知道它为什么会起作用,但确实如此!至少对我而言!


    环境:Xcode 5.0(5A1412)。

答案 6 :(得分:12)

检查您的代码签名部分。确保代码签名是iPhoneDeveloper代码signe

答案 7 :(得分:9)

打开Entitlements.plist并将布尔值get-task-allow设置为YES - 调试器现在可以附加!

答案 8 :(得分:4)

转到编辑方案,然后在运行 - &gt;下;信息 - &gt;构建配置,从Ad-Hoc更改为Debug。单击“确定”保存。

答案 9 :(得分:1)

您手机上可能有过期的开发资料。

我的开发配置文件已于几天前过期,我不得不续订。我在手机上安装了新配置文件,并在尝试运行我的应用时遇到了相同的错误消息。当我查看手机上的配置文件设置时,我注意到已过期的配置文件并将其删除。这清除了我的错误。

答案 10 :(得分:1)

如Buffernet所述,您无法使用分发配置文件进行调试。当我切换到开发人员配置文件时,我收到错误“找不到此可执行文件的有效配置文件”。

快速谷歌为此引导我到下面列出的文章。从那里,我意识到我没有一个有效的开发配置文件,因为我的iPhone没有被添加到Provisioning Portal以及所有其他相关内容。

确保您运行的是iPhone开发人员配置文件,并且您的设备已添加到配置门户网站!

http://iosdevelopertips.com/xcode/a-valid-provisioning-profile-for-this-executable-was-not-found.html

答案 11 :(得分:1)

当我尝试从Xcode启动应用程序时,我收到此错误,因为我认为我只选择了分发配置文件。构建成功,所以我创建了.ipa文件。我使用testflightapp.com来运行应用程序。您也可以使用iTunes。

答案 12 :(得分:0)

是的,用于分发目的的配置文件,即Distrutions provisioning配置文件不支持调试并提供此错误。只需创建和使用调试配置文件(在从developer.apple.com帐户创建配置文件时,请注意这一点)。

答案 13 :(得分:0)

我刚刚更改了我的bundleIdentifier名称,这似乎可以解决问题。

答案 14 :(得分:-1)

我已使用JailCoder http://jailcoder.com/修补了我的项目并解决了问题。 只需下载它并将您的xcode项目拖到它。