由于内存不足异常,我最近有一个应用被应用商店拒绝。该应用程序不会泄漏内存,但它的基本内存占用似乎太高了。根据苹果发送的崩溃日志,它在内存中占用了大约 14000 页(主要是由于巨大的纹理)。不过有两件奇怪的事情:
- 在提交之前,我在 5 台设备上对其进行了严格测试,并且从未在其中任何一台设备上发生过这种崩溃。
- 我确实在拒绝后优化了纹理,并将它们带到了原始大小的一半左右(纹理内存消耗)。
我无法知道我的应用程序现在占用了多少页,除非我可以重现与苹果相同的崩溃(我永远无法)。有没有另一种方法可以找出我的应用程序的内存占用,这样我就可以确定它现在已经足够优化了。
我确实尝试过仪器,但是当我尝试通过我的 XCode 运行它时,我的应用程序崩溃了(我的 XCode 一定有问题)。但是当我直接在我的 iPhone/iPod 上运行它时,它可以完美运行。任何帮助找出我的应用程序在 iPhone 上的内存占用(如果有类似于 Windows 的任务管理器的东西),将不胜感激。
谢谢
编辑:
从 XCode 启动应用程序会在控制台中出现以下错误:“启动远程程序时出错:无法获取进程 553 的任务。”
使用活动监视器启动应用程序会出现以下错误:“目标过早终止,无法收集数据”
编辑2:
通过使用开发配置文件而不是分发配置文件,我能够使用 Activity Monitor 运行我的应用程序。但是现在活动监视器中有几个部分 - 使用的物理内存、实际内存、虚拟内存。我考虑其中哪一个。总结一下,我需要知道其中哪一个会导致 iPhone 抛出 Low Memory 异常。