Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ios应用程序崩溃,没有错误,也没有崩溃报告_Ios_Objective C_Facebook Graph Api_Core Data_Crash - Fatal编程技术网

ios应用程序崩溃,没有错误,也没有崩溃报告

ios应用程序崩溃,没有错误,也没有崩溃报告,ios,objective-c,facebook-graph-api,core-data,crash,Ios,Objective C,Facebook Graph Api,Core Data,Crash,我目前正在导入所有facebook生日,并将其插入核心数据,然后根据最新的bday(获取和排序)对其进行排序。 当我使用facebook同步并获取所有联系人时,我的应用程序会完美地检索所有联系人,但收到联系人后很快就会崩溃 我尝试使用僵尸对象 我试过了 我尝试在异常导航器中添加异常 我将我的ipod与itunes同步,并查看了图书馆和设备日志,但找不到任何显示内存不足或类似问题的文件 我很困惑,因为崩溃的原因没有显示出来,它只是崩溃了,当我再次打开我的应用程序时,我可以看到从facebook导入

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

我尝试使用僵尸对象

我试过了

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

我将我的ipod与itunes同步,并查看了图书馆和设备日志,但找不到任何显示内存不足或类似问题的文件

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

调试器窗口中没有lldb,当我将其更改为gdb时,我可以看到gdb,但当我使用backtrace(bt)时,它会显示“无堆栈”

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

有什么问题吗?它是否因为内存问题而崩溃? 我怎么知道是什么导致了这次车祸


谢谢

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

最好使用Xcode的管理器查看设备控制台:

如果iOS内存不足并导致你的应用程序死机,你应该看到如下情况:

<Notice>: jetsam: kernel termination snapshot being created
<Warning>: Application 'UIKitApplication:com.yourapp[0x6337]' exited abnormally with signal 9: Killed: 9
:jetsam:正在创建内核终止快照
:应用程序“UIKitApplication:com.yourapp[0x6337]”异常退出,信号为9:Killed:9
您应该使用Instruments中的Activity Monitor来查看应用程序使用了多少内存

您还可以使用内存监视器仪器,并启用“物理内存空闲”的绘图功能。如果您在崩溃前看到图形接近0,您可以非常肯定这是内存问题


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

请注意,即使您使用crashlytics这样的崩溃报告程序,如果应用程序因内存问题而终止,您也不会收到任何报告。@Mike Weller您是对的,这是一个内存问题,日志显示此com.apple.launchd[1](UIKitApplication:com.*.*.*.[0x589e][2041]):(UIKitApplication:com.*.*.*.*.*.[0x589e])退出:终止:9感谢您的帮助,只是想知道如何在上面提供的快照中获得单个内存监视器,它是否可重复?在调试和发布构建配置中是否会发生相同的行为?如果使用debug,请检查作为该特定用例的一部分或结果出现的所有日志记录语句。您可能会看到一些被忽略的警告。com.apple.launchd[1](UIKitApplication:com.*.*.*.[0x589e][2041]):(UIKitApplication:com.*.*.*.**[0x589e])exit:Killed:9这是设备日志中发生的情况,主要与内存问题有关
viewDidUnload
已被弃用,不再在iOS6中调用。请参阅,因为您必须更改iOS6的代码,只是以一种对两者都适用的方式实现。