ios运行崩溃怎么办

2025-04-15 00:10:36
推荐回答(4个)
回答1:

下面就介绍如何在iOS中实现:
1. 在程序启动时加上一个异常捕获监听,用来处理程序崩溃时的回调动作

代码如下:

NSSetUncaughtExceptionHandler (&UncaughtExceptionHandler);

官方文档介绍:Sets the top-level error-handling function where you can perform last-minute logging before the program terminates.
UncaughtExceptionHandler是一个函数指针,该函数需要我们实现,可以取自己想要的名字。当程序发生异常崩溃时,该函数会得到调用,这跟C,C++中的回调函数的概念是一样的。
2. 实现自己的处理函数

代码如下:

void UncaughtExceptionHandler(NSException *exception) {
NSArray *arr = [exception callStackSymbols];//得到当前调用栈信息
NSString *reason = [exception reason];//非常重要,就是崩溃的原因
NSString *name = [exception name];//异常类型
NSLog(@"exception type : %@ \n crash reason : %@ \n call stack info : %@", name, reason, arr);
}

以上代码很简单,但是带来的作用是非常大的。

回答2:

  1. 首先看一下崩溃信息

  2. 可以利用全局断点来找出bug的具体位置

  3. 然后利用注释的方法找出哪一行代码出错了

  4. 最后改正错误,并清除一下,然后运行程序

回答3:

缓存不足 如果是老机子可能跑不动新系统了,建议转出存储文件,或者降级。换手机也不错

回答4:

用exception break point看一下挂在哪里。我猜八成是你的某个array里面塞了一个数字进去,取出来的时候对数字做了.length操作。