3

我目前正在导入所有 facebook 生日并将它们插入核心数据,然后我根据最新的生日(获取和排序)对它们进行排序。当我使用 facebook 同步并获取所有联系人时,我的应用程序可以完美地检索所有联系人,但是在收到联系人后它很快就会崩溃..

我尝试使用僵尸对象。

我试过泄漏。

我尝试在异常导航器中添加异常。

我将我的 ipod 与 iTunes 同步到了库和设备日志,但找不到任何说明内存不足问题或类似问题的文件。

我很困惑,因为崩溃的原因没有出现,它只是崩溃了,当我再次打开我的应用程序时,我可以看到从 facebook 导入的所有联系人

调试器窗口中没有 lldb,当我将其更改为 gdb 时,我可以看到 gdb 但是当我使用回溯(bt)时,它说“没有堆栈”

我还注意到有一件事,即如果联系人太多,我的应用程序会崩溃,如果联系人较少,它可以正常工作。

可能是什么问题?它会因为内存问题而崩溃吗?我怎么知道是什么导致了崩溃?

谢谢

4

2 回答 2

10

由于内存不足,您的应用很可能会被终止。

最好的办法是使用 Xcode 的 Organizer 查看设备控制台:

在此处输入图像描述

如果 iOS 内存不足并杀死您的应用程序,您应该会看到如下内容:

<Notice>: jetsam: kernel termination snapshot being created
<Warning>: Application 'UIKitApplication:com.yourapp[0x6337]' exited abnormally with signal 9: Killed: 9

您应该使用 Instruments 中的活动监视器来查看您的应用程序正在使用多少内存。

您还可以使用 Memory Monitor 工具并启用“Physical Memory Free”图形。如果您在崩溃前看到图表接近 0,则可以确定这是内存问题。

在此处输入图像描述

于 2013-05-06T14:07:31.413 回答
0

尝试将一些用于释放内存的代码放入 viewDidUnload。例如,如果您使用鼠标在代码和 xib 之间创建链接,那么 xcode 会自动为当前元素生成代码。

于 2013-05-06T14:27:39.433 回答