在我的iOS应用中,我在条件块内使用了exit(-1)
调用,即performFetch
的NSFetchedResultsController
函数是否将Yes
返回为错误。这是基本代码
NSFetchedResultsController *resultsContoller;
NSError *error;
if (![resultsContoller performFetch:&error]) {
exit(-1);
}
NSfetchedResultsController的初始化在我的代码中完成。
所以,这是我的问题。由于
exit()
调用,该应用程序此时确实崩溃了。但是,当我通过XCode看到iPhone的设备日志时,没有注册崩溃报告。exit()
在iOS中不视为崩溃? exit()
的意外调用? 最佳答案
是否在iOS中以编程方式调用exit()不被视为崩溃?
调用exit的应用程序将向用户显示已崩溃,
而不是执行优雅的终止并动画返回
主屏幕。
是否仅在设备日志中记录了对exit()的意外调用?
不,exit()不会在设备日志中注册,因为它实际上是在关闭应用程序而不会崩溃。
如果在开发或测试期间有必要终止您的
建议使用应用程序,中止功能或断言宏。
像NSAssert(FALSE, @"Quitting the app programmatically.");
在这里检查参考:
https://developer.apple.com/library/content/qa/qa1561/_index.html
关于ios - 在设备日志中未将Exit()函数调用识别为崩溃,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44601814/