【问题标题】:How to run iPhone program with Zombies instrument?如何用 Zombies 仪器运行 iPhone 程序?
【发布时间】:2010-11-27 21:58:16
【问题描述】:

我在 Snow Leopard 上运行 XCode 3.2,我试图对我的应用程序运行 Zombies 工具,但选择显示为灰色,我不知道为什么。我知道 NSZombieEnabled 环境变量。我在我的应用程序中将其设置为 YES。我不确定这是否重要,但是,该应用程序是我开始使用先前版本的 XCode 在 Leopard 上开发的应用程序。这是我的菜单的截图:

【问题讨论】:

  • 我从来没有见过僵尸工具,所以我不能告诉你太多。我所知道的是,某些工具在设备上运行时有效,但在模拟器上无效。你可以试试。
  • 试过了,还是没有启用。
  • 我也遇到了同样的问题,我按照这里的单一答案,像 Anthony D 我的僵尸选项仍然是灰色的。
  • 我注意到,当我将方案设置为 iPhone 模拟器时,点击产品 > 配置文件后会出现 Zombies 工具,但如果我将其设置为设备,Zombies 就会消失。

标签: iphone objective-c xcode instruments


【解决方案1】:

正如 Apple 工程师所说,Run with Performance Tool 下的大多数项目都需要 dTrace 支持,但 dTrace 尚不适用于 iOS,甚至不适用于模拟器。

但是,奇怪的是,您可以在 Instruments 中手动设置模板来测试僵尸,如 @florin 所述

【讨论】:

    【解决方案2】:

    您需要从 XCode 外部使用 Zombies 仪器启动 Instruments 应用程序

    你可以这样做:

    Instruments 应用程序通常位于/Developer/Applications/ 内,但您也可以使用 Spotlight 找到它。

    当 Instruments 启动时,您应该会看到一个屏幕,要求您为新的 Trace Document 选择一个模板。

    选择:iPhone Simulator > Memory > Zombies

    接下来你需要选择一个目标。

    转至:Chose target > Chose target > Chose target...

    现在您需要选择应用程序文件:
    <Path to your iPhone project>/build/Debug-iphonesimulator/<Application name>
    然后按Chose

    现在一切就绪。

    要启动您的应用程序,请按Record 按钮。

    一些旁注

    • 我在 Mac OS X 10.6.3 上使用了 XCode 3.2.3,但我相信它在以前的版本上也能正常工作。
    • Zombies 仪器仅适用于模拟器。
    • Zombies 仪器不能与 Leaks 仪器一起使用,因为所有的僵尸都会显示为泄漏。
    • 我也想知道为什么 XCode 中的菜单是灰色的。

    【讨论】:

      【解决方案3】:

      您确定将其设置在正确的位置吗?我的意思是,它是可调整的运行时,而不是编译时。请确保将其设置在正确的位置,然后重试。

      转到项目 -> 编辑活动可执行文件
      单击参数
      单击“要在环境中设置的变量”部分中的 +
      在 Name 列中输入 NSZombieEnabled,在 Value 列中输入 YES。
      确保选中 NSZombieEnabled 条目的复选标记。

      【讨论】:

      • 这不是 Instruments 的僵尸功能;它是较旧的内置基础僵尸功能。 Instruments 的版本更强大。
      猜你喜欢
      • 1970-01-01
      • 2012-11-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-15
      • 2012-02-01
      • 2012-03-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多