试图弄清楚为什么我的应用程序有时会崩溃。我刚刚在 Leaks 中运行它,即使 Live Bytes 只有 3.09 MB,它也崩溃了。所以看起来我没有使用太多的内存。通过 Xcode 在设备上运行时发生崩溃时,没有错误记录到控制台。设备上也没有崩溃日志。
我还能做些什么来排除故障?
试图弄清楚为什么我的应用程序有时会崩溃。我刚刚在 Leaks 中运行它,即使 Live Bytes 只有 3.09 MB,它也崩溃了。所以看起来我没有使用太多的内存。通过 Xcode 在设备上运行时发生崩溃时,没有错误记录到控制台。设备上也没有崩溃日志。
我还能做些什么来排除故障?
应用程序崩溃可能有多种原因。这里有几个最常见的。
错误的内存访问。
当您访问过度释放的内存对象时发生。要解决问题,请使用模拟器使用 NSZombies。有时崩溃不是在模拟器中模拟的,在这种情况下,你只能靠自己了。
无效参数异常
如果您访问一个属性或调用它不具有的对象的方法调用,通常会发生这种情况。通常是由于对象的无效转换,例如转换NSArray
为NSMutableArray
fromid
类型并尝试向其添加对象。
解决方案是使用断点进行调试,并使用以下命令查看对象的实际类并将对象转换为适当的类型。
po [object class]
UIViewController
问题
使用不存在的 xib 文件创建视图控制器。
使用未在 IB 中设置的视图出口创建视图控制器。
UIControl
在 XIB 文件中设置类似UITextField
的IBOutlet,File Owner
然后意外地将其从File Owner
XIB 文件中删除,而不是重置。
还有更多.. !!