由于内存不足,我最近在应用商店中拒绝了该应用。该应用程序不会泄漏内存,但其基本内存占用似乎太高。根据苹果发送的崩溃日志,它在内存中占用大约14000页(主要是由于巨大的纹理)。但有两件奇怪的事情:
我无法知道我的应用程序现在占用了多少页面,除非我可以重现与苹果相同的崩溃(我从未做过)。 是否有另一种方法可以找到我的应用的内存占用量,这样我就可以确定它现在已经足够优化了。
我确实尝试过乐器,但是当我尝试通过我的XCode运行它时,我的应用程序崩溃了(我的XCode一定是个问题)。但是当我直接在我的iPhone / iPod上运行时,它的效果非常好。 在iPhone上查找我的应用内存占用的任何帮助(如果有类似于Windows的任务管理器的东西),将不胜感激。
由于
修改
从XCode启动应用程序会在控制台中出现以下错误: “启动远程程序时出错:无法获得进程553的任务。”
使用活动监视器启动应用程序会出现以下错误: “目标终止太早收集数据”
EDIT2:
通过使用开发配置文件而不是分发配置文件,我能够使用活动监视器运行我的应用程序。但现在活动监视器中有几个部分 - 使用的物理内存,实内存,虚拟内存。我考虑哪一个。 总结一下,我需要知道哪一个导致iPhone抛出低内存异常。
答案 0 :(得分:4)
XCode - >运行 - >使用性能工具运行 - >活动监控。
如果设备已连接,活动监视器将在iPhone / iTouch上运行。
答案 1 :(得分:2)
我认为你是从错误的角度来看这个。你问的是如何在不使用XCode的情况下找到内存占用量。我认为你应该问的问题是:你为什么不能使用XCode?据推测,这就是你用来开发应用程序的原因吗?
如果没有XCode,你几乎会失明。你说你的纹理大小减半,但你怎么知道?当你的应用程序获得低内存警告时,它是否会释放任何无关的内存? (applicationDidReceiveMemoryWarning:
)
首先,您是否看过从XCode运行应用程序时的崩溃日志?您应该能够在XCode中的管理器中看到它们。
我不确定是否有一个解决方案可以阻止您的应用与XCode崩溃。通常,当我的iPhone不允许调试时,我只需重新启动xCode和我的手机,它就会重新开始工作。重启XCode有时会有所帮助。我也会尝试重新安装XCode和iPhone SDK。