我想问一下,Apple和iPad和iPhone App可以容忍多少MB的内存泄漏。因此App不会被App Store拒绝。 我在XCode中使用了Instruments来检查我的iPad应用程序的内存泄漏。它泄漏了大约11 MB的内存。但是当安装在iPad上时,App不会被Springboard终止并连续运行而没有任何问题或错误。当对象没用时我释放了内存,但它仍然泄漏。
答案 0 :(得分:3)
Apple没有指定泄漏限制,但我建议11MB是巨大的。我的目标是在我写的每个应用程序上泄漏0个字节。您泄漏的事实意味着您不了解内存管理,因此您应该仔细阅读Apple关于该主题的文档:
或谷歌的一些在线教程可能更容易让初学者理解。 E.g。
http://www.raywenderlich.com/2657/memory-management-in-objective-c-tutorial
应用程序使用的内存越多,被杀的可能性就越大,用户体验就越差。你的应用程序现在可以连续运行,但需要多长时间?
答案 1 :(得分:0)
没有指定容忍内存泄漏的数量。问题是你不应该自己容忍它对应用程序和性能都不利,并使应用程序不那么稳定。我建议你首先解决这些内存泄漏,它会使应用程序质量更好并满足你的客户。
答案 2 :(得分:0)
我认为对于内存消耗或内存泄漏没有硬限制指定的限制。这将取决于我假设在该特定时间的设备的当前存储器消耗。
在任何情况下,方法- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application
都会在收到内存警告的时候被触发,你应该听一听这个方法,试着释放你应用程序的一些内存。这种变暖将被发送几次到应用程序,如果没有做任何事情来释放内存,操作系统将强行退出应用程序(即它将崩溃)。
您还可以尝试使用XCode中的Build and Analyze
选项来查看代码中的一些潜在内存泄漏。