如何在不使用仪器的情况下在iphone应用程序中查找内存分配和泄漏?

时间:2012-04-24 14:56:09

标签: iphone ios xcode ipad instruments

我打算创建一个iPhone / ipad应用程序,它可以检查设备上可用应用程序的分配和泄漏。目前我不知道是否有任何现有的API(可能是私有的,因为我不打算将其提交到应用程序商店)来实现这一点。我的想法可能有点疯狂,但任何人都可以知道它是否可行。

2 个答案:

答案 0 :(得分:2)

更新1 :(你的问题错了!) 在未经过越狱的手机(沙盒)上无法分析iOS应用中的其他应用。 如果你可以越狱,尝试在iOS上编译valgrind(非常难!)并围绕它构建一个GUI(iOS应用程序)。

如果您在应用中搜索泄漏(不同的问题): 对于内存泄漏,您不需要API。

我会推荐你​​......

  1. ...使用ARC
  2. ...对iOS(仅限模拟器)使用valgrind(流行的c工具框架)。
  3. 当您在模拟器中找到并修复泄漏时,在iOS设备版本中修复它们的可能性大于99.9%。

    但为什么不使用仪器?

答案 1 :(得分:2)

iOS应用程序是沙盒 - 一个应用程序无法查看另一个应用程序的内存或资源。因此,您无法编写能够检测其他应用程序泄漏的应用程序。如果你愿意越狱你的设备,这个故事可能会有所不同,但在这种情况下找到信息将会很困难。