iPhone 应用程序的 Shark 和 MallocDebug

3
我正在开发一个使用Cocos2D-iphone框架的iPhone游戏,想要使用Shark来衡量性能,但是在XCode中,“Run->Start with Performance Tool->Shark”无法使用(Instruments Leaks可以正常工作)。我已将构建配置为“生成分析代码”,尝试了构建设备和模拟器,但仍然没有成功,Shark仍然无法使用。
我还尝试手动启动Shark(在XCode之外),但同样无效。在“Sampling->Network/iPhone sampling”下,我选择了“Control network profiling of shared computers”单选按钮,并选中了我的设备旁边的复选框。当我按下开始时,什么都没有发生。
Shark对于桌面应用程序可以正常工作。我正在使用Shark 4.7.0(244.4)和XCode 3.1.3。我正在SDK ver 2.2.1上构建iPhone应用程序。
我需要在iPhone上安装一个应用程序才能让Shark工作吗?还是我漏掉了其他什么东西?

2
我也遇到了同样的问题。几点说明:我之前已经成功使用过Shark,尽管这是我自iOS4以来的第一次尝试。iPod-Touch设备运行4.0.2。XCode 3.2.3。Shark 4.7.3。防火墙关闭(即使开启时也允许Shark)。按下“开始”按钮没有反应。没有弹出窗口,没有录音,什么都没有。 - Olie
3个回答

1
今晚第一次尝试使用Shark。以下内容适用于我在Xcode 3.2和Shark 4.7.1下的操作。我的发布版本已经构建了调试符号,但是我没有选择“生成分析代码”选项。
  1. 构建应用并在设备上启动
  2. 启动Shark
  3. 从Shark菜单中,选择Sampling->网络/iPhone分析
  4. 在Shark窗口中,选择单选按钮“控制共享计算机的网络分析”
  5. 在列表中选择您的iPhone并可选择配置分析会话
  6. 按下Start开始分析,按下Stop停止分析
希望这有所帮助!

0

两件事:

  1. 将Shark作为单独的应用程序运行(在Spotlight中查找)。

  2. 如果您有防火墙,则必须允许Shark接受传入连接,否则它将无法与您的iPhone一起工作。

一旦Shark正在运行,它应该在Xcode中处于启用状态。

希望这可以帮助您。


0

我在升级Xcode后也发现了Shark禁用的问题。我在另一台之前没有安装Xcode的机器上安装Xcode时偶然发现了这个问题。

由于我真的很谨慎,想要保留撤退的途径,所以我不会将Xcode安装在/Developer中。相反,我会将其安装在类似于/Developer-3.2.5的目录中,然后创建一个符号链接从/Developer指向/Developer-3.2.5。这样,如果出现问题,我只需将我的符号链接切换回旧版本。

然而,问题出现了,因为这似乎是一个安装程序错误。尽管我说要在/Developer-3.2.5中安装,但它仍然在/Developer中安装了一些东西(包括Shark)。

由于我有一个指向旧SDK的符号链接,所以它只将Shark和其他文件写入旧版本,而没有写入新版本。然后当我重新制作符号链接时,它们就不在那里了。在全新安装的机器上,当我去创建符号链接时,已经有一个/Developer目录存在,这本不应该存在。

为了解决这个问题,我必须在安装之前先删除我的符号链接,然后在/Developer-3.2.5中进行安装,将漂泊的文件移动到/Developer-3.2.5中,删除/Developer,然后创建我的符号链接。

这可能与你的Shark运行问题无关,但这正是导致我的问题的原因。

祝你好运...


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