无法在仪器中启动我的应用程序:至少有一个目标无法启动

And*_*rew 98 iphone xcode instruments ios

我已正确设置所有代码签名权利.在我的手机上运行应用程序很好,但在仪器中启动它会给我一个错误消息:

Error Starting Recording
At least one target failed to launch; aborting run
Run Code Online (Sandbox Code Playgroud)

然后:

Target failed to run. Permisson to debug [app name] was denied. The app must be signed with a development identity (i.e. iOS Developer)
Run Code Online (Sandbox Code Playgroud)

有什么想法可以阻止这种情况发生吗?不会发生在我的iPad上.

har*_*ynn 215

编辑目标的方案,并在"Profile [App Name]"下将Build Configuration设置为Debug(默认情况下通常为Release).

  • +1,谢谢,这对我有帮助.我补充一点,我必须在将配置设置为Debug之后构建项目,否则Instruments仍然不会播放球. (6认同)
  • 虽然我知道"将配置更改为调试"是错误的,但我没有解决此问题的方法.一般来说,配置调试版本的功能/常用性要小得多. (4认同)
  • 我遇到了同样的问题.使用调试配置分析您的应用程序不是有效的性能测试,因为编译器没有像Adhoc那样优化代码.有没有人弄清楚AdHoc问题? (3认同)

Zol*_*tók 33

它表示您需要使用开发人员证书(而不是分发证书)对应用程序进行签名.

在Xcode中5只改变"Provisioning Profile"字段中为"Release"构建在生成设置你的开发者证书,而不是你的分发证书.无论如何,在测试期间.Xcode不允许您使用分发证书进行构建.

确保项目构建设置不会覆盖目标构建设置或在项目构建设置中进行更改.

完成测试后,不要忘记设置配置文件.

我不推荐使用harrywynn的方法,因为最好对发布版本进行概要分析,因为这样你就会考虑编译器的优化,并拥有用户的确切体验.

  • "首先,它需要一个开发配置文件,因此它意味着它需要处于调试模式." 您可以使用任何配置文件运行任何配置."第三,你是分析,它应该是一个开发(Debug)构建"你应该使用发布版本进行分析,以便将编译器优化考虑在内.您可能会得到不同的结果."第四,为什么你会使用发布模式进行发布方案?" 因为这是解决这个问题的最简单方法.正如我在答案中写的那样,当你准备好测试时,你应该改回配置文件. (4认同)

dor*_*nad 9

添加到以前的答案.

  • 仪器的抱怨有关签署的身份.
  • 我认为最好在发布模式下进行配置,原因与Zolten给出的原因相同.(考虑到编译器的优化,并拥有用户的确切经验等...)
  • 要更改Xcode 6的代码签名标识:
    • 单击您的项目,选择您要分析的目标.
    • 构建设置 - >代码签名 - >代码签名身份 - >发布
    • 选择您的iOS开发人员资料.
  • 配置文件:让Xcode为您选择正确的配置文件,例如:切换到自动
  • 完成配置文件后,切换回正常设置.

这是一张非常直观的照片;)

在此输入图像描述